我想這是你要與你的查詢:
SELECT
a.tr_numb AS granddaughter
,c.tr_numb AS grandfather
,a.tr_loc
,a.Tr_forest
FROM
Tree a, Tree b, Tree c
WHERE
a.tr_parent = b.tr_numb
AND b.tr_parent = c.tr_numb
AND a.tr_forest = c.tr_forest
AND a.tr_loc = c.tr_loc
注意如何a
, b
和c
是表Tree
的別名。這是一個self join。我會在這裏留下這個查詢,以便您可以嘗試查看您出錯的位置。
但是,我不會推薦用於JOIN的語法。學習更明確的語法要好得多。這是我會怎麼寫查詢:
SELECT
Tree.Tr_numb AS tree
,Parent.Tr_numb AS parent
,Grandparent.Tr_numb AS grandparent
,Tree.tr_forest
,Tree.tr_loc
FROM
Tree
INNER JOIN Tree [Parent] ON (Parent.Tr_numb = Tree.Tr_parent)
INNER JOIN Tree [Grandparent] ON (Grandparent.Tr_numb = Parent.Tr_parent)
WHERE
Tree.Tr_loc = Grandparent.Tr_loc
來源
2017-05-23 19:47:00
wwv
請仔細閱讀http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code-on-so-何時提問/ 285557以及接受的答案 –