有趣的SQL测验

时间:2009-07-28 19:01:17

标签: sql

最近我遇到了以下测验。想象一下,我们有这个表

+--------+
| colors |
+--------+
| red    |
| black  |
| white  |
| green  |
| orange |
+--------+

任务是编写一个SQL查询,它将选择所有对而不允许重复。排列也被计算({red,black} = {black,red},因此只允许其中一个)。

3 个答案:

答案 0 :(得分:27)

试试这个

Select A.Color, B.Color
From Colors A
Cross Join Colors B
Where A.Color > B.Color

答案 1 :(得分:0)

Select A.Colors, B.Colors From Colors A 
Cross Join Colors B Where A.Colors < B.Colors or B.colors < A.colors

答案 2 :(得分:0)

试试这个:

Select * From colours A 
Cross Join colours B Where A.colours < B.colours or B.colours > A.colours
and b.colours != b.colours and a.colours != a.colours