我在SQL表中有一堆列。我想要做的是返回表格中所有可能的条目组合,所以:让我们说第1列有“猫,狗,马”,第2列有“红色,绿色,蓝色”,我想返回一张表说:
Cat Red
Cat Green
Cat Blue
Dog Red
Dog Green
Dog Blue
Horse Red
Horse Green
Horse Blue
等等。
我如何在SQL-Server中完成此任务?
感谢。我应该提到一些列包含不同的类型,所以我认为union不会起作用!
答案 0 :(得分:4)
这称为cross join。
例子查询:
SELECT table1.column1, table2.column2 FROM table1 CROSS JOIN table2
它应该产生你期望的结果。
如果您有一个表(就像您的情况一样),您可以使用这样的别名
SELECT table1.column1, table2.column2 FROM table1 CROSS JOIN table1 as table2