【每日一练:SQL】使用一条SQL求出四个球队所有比赛组合

SQL题目:
一个表team,里面只有一个字段name, 一共有4条纪录,分别是a,b,c,d, 对应四个球队,现在四个球队进行比赛,
用一条sql语句显示所有可能的比赛组合。

解决:

数据库版本:Oracle 11g

--创建表和插入数据

create table team(name varchar2(30));

insert into team values('a');
insert into team values('b');
insert into team values('c');
insert into team values('d');
commit;

思路
使用笛卡尔积连接,并使当前大小值只与比它大的值连接。

--SQL语句
select a.name    aname
       , b.name  bname
  from team a, team b
 where a.name < b.name;

结果:
ANAME	BNAME
a	b
a	c
a	d
b	c
b	d
c	d

 

你可能感兴趣的:(每日一练,蒙夛的每日一练(SQL,逻辑等))