没有键的mysql连接表

时间:2012-06-15 18:46:10

标签: mysql join

基本问题:如何连接2个表以获得以下输出?

Table1:
"type"
red
blue
big
small

===

Table2:
"object"
cat
person
chair

===

Output:
red cat 
blue cat
big cat
small cat
red person
blue person
big person
small person
red chair
blue chair
big chair
small chair

4 个答案:

答案 0 :(得分:5)

SELECT * FROM Table1 CROSS JOIN Table2

答案 1 :(得分:2)

SELECT CONCAT(t1.type,' ',t2.object) as `Output:`
  FROM table1 t1 CROSS JOIN table2 t2

(关键字CROSS在mysql中是可选的,但它确实用于记录您想要的笛卡尔积,这对于阅读此陈述的人来说可能是有用的信息,谁通常会期望看到加入谓词。

如果需要以特定顺序返回的结果集,请包含ORDER BY子句。这是一个相对复杂的表达式,它按照显示的顺序排序,但它可以完成。

答案 2 :(得分:1)

array_combine(table1, table2);

Here是一个获取更多信息的链接。

答案 3 :(得分:1)

笛卡尔积我想:

SELECT t1.type, t2.object FROM Table1 t1, Table2 t2