我有一张包含国家列表的表格,如下所示。每个国家都将对抗名单中的所有国家。我需要一个查询来显示所有可能匹配的格式(country1,country2)的对手国家列表,而不重复。例如c1& c2将互相对抗。显示列表不应该有c2& c1(重复)
CtryName
---
c1
c2
c3
c4
c5
这是一个面试问题。我不知道如何获得预期的结果。请通过简单的查询来帮助我显示预期的结果。
答案 0 :(得分:4)
试试这样:
select t1.c teamA, t2.c teamB
from test t1,
test t2
where t1.c < t2.c
order by t1.c, t2.c
我将表格命名为test
,将国家/地区列命名为c
。
在这里查看小提琴:http://sqlfiddle.com/#!6/9124f/2