这个问题听起来很混乱,但看看:
这样我们就可以获得第一列( col1 ):
select distinct maker
from product
第二列( col2 ):
select distinct type,maker
from product
所以现在我需要从col1和col2获得所有可能的组合。有什么建议吗?
很快,这个:
A f1
B f2
应该成为这个:
A f1
A f2
B f1
B f2
P.S。此查询不会返回我需要的内容。
select distinct A.maker, B.type
from product as A
答案 0 :(得分:6)
使用cross join
获取所有组合:
select m.maker, t.type
from (select distinct maker from product) m cross join
(select distinct type from product) t;
这是ANSI SQL语法,应该在任何数据库中都受支持。
答案 1 :(得分:1)
使用cross join
但没有子查询的变体会得到与@Gordon Linoff
帖子相同的结果,因此您将获得所有可能的组合
select distinct A.maker, B.type
from product as A cross join product as B