作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个不同的表,例如表1和表2。他们之间没有任何关系。
现在我想使用单个查询检索两个不同的字段,例如 table1 中的 field1 和 table2 中的 field2 。
从表1、表2中选择field1、group_concat(field2)。当我使用此查询时,如果第二个表有行,则数据成功出现,否则所有数据均为空
最佳答案
实现这一点的方法是使用交叉连接。但请注意,这会导致大量重复数据。
例如,如果表具有以下数据:
Table 1
Field 1
1
2
3
Table2
Field 2
A
B
C
交叉联接(例如select table1.field1, table2.field2 from table1 cross join table2
)将返回:
Field 1, Field 2
1, A
2, A
3, A
1, B
2, B
3, B
1, C
2, C
3, C
由于每个表有三行,因此交叉联接返回 3 x 3 = 9 行。例如,如果每个表有 100 行,则查询将返回 100 x 100 = 10,000 行。正如您所看到的,通过交叉连接,返回的数据量很快就会失控。
由于两个表之间没有关系,因此最好使用两个查询。
关于mysql - 如何从两个没有唯一字段的不同表中获取记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29037145/
我是一名优秀的程序员,十分优秀!