1
我有两个表格:网址为&的地方。为了简化,数据是这样的:
URLS:
urlID url
1 /england
2 /scotland
3 /wales
地方:
placeId name lft rgt urlRef
1 England 1 23000 1
2 Scotland 23001 37000 2
3 Wales 37001 50000 3
的地方台则已经嵌套在国家内部进一步的地方。我希望能够加入两个表来选择喜欢的我的地方的路径:
England /england
Shropshire /england/shropshire
Shrewsbury /england/shropshire/shrewsbury
我第一次尝试这样,它不工作等各种方式也没有吃。
SELECT node.name, url
FROM places AS node, places AS parent LEFT JOIN urls ON urlId = node.urlRef
WHERE node.lft BETWEEN parent.lft AND parent.rgt AND urlId = 1
ORDER BY node.lft
SELECT node.name,网址 从URL中LEFT JOIN AS节点放在node.urlRef = urls.urlId,地方父 WHERE node.lft BETWEEN parent.lft和parent.rgt AND urlId = 46 ----这提供了一个结果,其结果数量正确,但所有结果都是相同的结果,而不是路径。 –
下面是答案: SELECT parent.name 从URL中LEFT JOIN AS节点上node.urlRef = urls.urlId地方,地方父 WHERE node.lft BETWEEN parent.lft和parent.rgt和node.urlRef = 46 –