加入两个选择查询,其中一个查询的结果依赖于另一个查询

时间:2017-08-02 10:46:37

标签: mysql sql

有两个查询如下:

select column1, column2, column3, ....
from table1
where.... as T1

select count(*)
from table2
where column1 = T1.column1

是否可以将两者合并为一个查询

2 个答案:

答案 0 :(得分:1)

是的,我们可以像美国总统曾经说过的那样:

flattenMap

会告诉您每个select table1.column1, count(*) from table1 join table2 on table1.column1 = table2.column1 group by table1.column1 中有多少元素。如果您还需要group其他值,那么您也必须通过将它们放入select子句或使用它们的聚合函数来聚合它们,例如group by将值放入由分隔符分隔的列表中。

答案 1 :(得分:0)

一种简单的方法是使用select中的子查询:

select (select column1, column2, column3, ....
        from table1
        where....
       ) as T1,
       (select count(*)
        from table2
        where column1 = T1.column1
       ) as T2;