是否可以使用ORDER BY子句來確保兩個字段(都是INT類型)的以下標準,在本例中分別被稱爲child
和parent
。複雜的TSQL訂單子句
parent
參考child
,但可以爲空。- 父母可以有多個孩子;一個孩子只有一個父母。
- 小孩不能成爲自己的父母。
- 必須存在至少一個沒有父母的孩子。
child
的每個值必須出現在parent
中的有序結果集中。
我在遇到困難點5
樣品無序數據:
child parent
------------
1 NULL
3 5
4 2
2 5
5 NULL
顯然既不ORDER BY a, b
或ORDER BY b, a
工作。事實上,我越想到它,我也不確定它甚至可以完成。鑑於限制,明顯的情況如:
child parent
------------
1 2
2 1
是不允許的,因爲它違反了規則3和4(顯然是5)。
那麼,我正在努力實現的可能性,如果是的話,怎麼樣?平臺是SQL Server 2005中
更新:所需的排序順序爲樣本數據:
child parent
------------
1 NULL
5 NULL
2 5
3 5
4 2
對於每一行定義父列一個非空值,該值已經存在了int子列。
你能表現出所需的順序樣本數據,好嗎?這將是一個幫助。 – 2010-07-05 11:21:11
根據您的要求添加,Brian。 – 2010-07-05 12:16:53