Tại sao thứ tự các bảng quan trọng khi kết hợp một bên ngoài & một tham gia bên trong? sau thất bại với postgres:Tham gia nội bộ & tham gia bên ngoài; thứ tự các bảng từ quan trọng là gì?
SELECT grp.number AS number,
tags.value AS tag
FROM groups grp,
insrel archiverel
LEFT OUTER JOIN ownrel ownrel ON grp.number = ownrel.dnumber
LEFT OUTER JOIN tags tags ON tags.number = ownrel.snumber
WHERE archiverel.snumber = 11128188 AND
archiverel.dnumber = grp.number
với kết quả:
ERROR: invalid reference to FROM-clause entry for table "grp" LINE 5: LEFT OUTER JOIN ownrel ownrel ON grp.number = ownrel.d...
^ HINT: There is an entry for table "grp", but it cannot be referenced from this part of the query.
khi nhóm này được đảo ngược trong tất cả các TỪ nó hoạt động:
SELECT grp.number AS number,
tags.value AS tag
FROM insrel archiverel,
groups grp
LEFT OUTER JOIN ownrel ownrel ON grp.number = ownrel.dnumber
LEFT OUTER JOIN tags tags ON tags.number = ownrel.snumber
WHERE archiverel.snumber = 11128188 AND
archiverel.dnumber = grp.number
Đó là rất thú vị. Nó phải có một cái gì đó để làm với trộn công ước. Tôi hơi ngạc nhiên khi phiên bản thứ hai còn hoạt động! –