我有一個簡單的一對多關係。我只想在父母至少有一個孩子時從父母中選擇行。所以,如果沒有孩子,那麼父行不會返回結果集中。如何僅在至少有一個孩子的情況下選擇父行?
例如,
Parent:
+--+---------+
|id| text |
+--+---------+
| 1| Blah |
| 2| Blah2 |
| 3| Blah3 |
+--+---------+
Children
+--+------+-------+
|id|parent| other |
+--+------+-------+
| 1| 1 | blah |
| 2| 1 | blah2 |
| 3| 2 | blah3 |
+--+------+-------+
我想要的結果是:
+----+------+
|p.id|p.text|
+----+------+
| 1 | Blah |
| 2 | Blah2|
+----+------+
我沒有測試過,但我猜測這是不是加入慢。 – Hogan 2010-04-03 16:22:49
@霍根 - 存在它是最快的方法。優化器將爲空檢查的外連接執行相同的執行計劃......這將**作爲**快速,但存在永遠不會變慢。 – 2010-04-03 16:24:02
整潔。謝謝@尼克。對於mysql,ms sql和oracle這是真的嗎? – Hogan 2010-04-04 16:35:23