Q
子查詢的自加入
12
A
回答
26
你可以用這樣做的:
WITH subquery AS(
SELECT * FROM TheTable
)
SELECT *
FROM subquery q1
JOIN subquery q2 on ...
或通過創建包含查詢一個視圖,並加入對:
SELECT *
FROM TheView v1
JOIN TheView v2 on ...
或蠻力法:輸入子查詢兩次:
SELECT *
FROM (
SELECT * FROM TheTable
) sub1
LEFT JOIN (
SELECT * FROM TheTable
) sub2 ON ...
+0
根據http://www.postgresql.org/docs/8.3/interactive/unsupported-features-sql-standard.html,PostgreSQL不支持最新版本8.3中的WITH查詢。 – markusk 2009-05-25 17:03:39
+0
如果您可以升級到8.4,目前處於測試階段,WITH終於出現了,請參閱http://www.postgresql.org/docs/8.4/static/queries-with.html – 2009-05-25 17:08:41
2
您的意思是,對錶進行查詢的結果,對同一張表。如果是這樣,那麼是的,這是可能的。
--Bit of a contrived example but...
SELECT *
FROM Table
INNER JOIN
(
SELECT
UserID, Max(Login) as LastLogin
FROM
Table
WHERE
UserGroup = 'SomeGroup'
GROUP BY
UserID
) foo
ON Table.UserID = Foo.UserID AND Table.Login = Foo.LastLogin
0
是的,只是別名查詢:
SELECT *
FROM (
SELECT *
FROM table
) t1
JOIN (
SELECT *
FROM table
) t2
ON t1.column < t2.other_column
相關問題
- 1. SQL子查詢/自加入
- 2. 子查詢中加入子查詢
- 3. 加入子查詢
- 4. 加入子查詢
- 5. 子查詢 - 加入
- 6. CTE通過自加入和子查詢
- 7. SQL Server - 相關子查詢/自加入
- 8. 如何將子查詢加入自己?
- 9. 從屬子查詢自加入
- 10. 自加入而不是子查詢
- 11. 自加入查詢
- 12. LINQ查詢與加入的子查詢
- 13. 加入的子查詢
- 14. 加入的SQL子查詢
- 15. 加入laravel的子查詢
- 16. 加入MySQL的子查詢
- 17. MySQL的子查詢/加入
- 18. MySQL加入查詢或子查詢
- 19. 子查詢加入主查詢
- 20. MySQL查詢加入或子查詢
- 21. Linq查詢加入子查詢
- 22. 子查詢,加入一個查詢
- 23. 如何通過子查詢加入自我加入?
- 24. SQL自加入查詢到LINQ查詢
- 25. 把mysql子查詢加入到加入
- 26. 加入替換子查詢
- 27. 子查詢,並加入
- 28. 子查詢和加入
- 29. 子查詢或加入MySQL?
- 30. 替代子查詢加入
你能提供你想要做什麼的例子嗎? – 2009-05-25 16:48:49