如何在单个记录中将2个选择结果与相同ID组合在一起

时间:2014-11-13 10:00:42

标签: sql

如果查询:

select 1 'id member',2 'material total'

select 1 'id member',4 'cash total'

结果:

id member   material total
----------- --------------
1           2

id member   cash total
----------- -----------
1           4

我想加入那个结果。期望的结果:

id member  | material total | cash total
-----------| -------------- |-----------
1          | 2              |          4

3 个答案:

答案 0 :(得分:1)

对于给定的例子,SonalPM的另一个答案是正确的。

但是,作为您的数据不是硬编码的一般解决方案,请使用SQL JOIN 。 在这种情况下,您可以根据id member

加入两个结果集

e.g。

SELECT x.id_member, x.mat_total, y.cash_total
FROM 
  (SELECT 1 `id_member`, 2 `mat_total`) x,
  (SELECT 1 `id_member`, 4 `cash_total`) y 
WHERE x.id_member = y.id_member

答案 1 :(得分:0)

只需使用这样的连接:

SELECT a.idm,
       a.mat,
       b.cash
FROM (SELECT 1 `idm`, 2 `mat`) a
  JOIN (SELECT 1 `idm`, 4 `cash`) b ON a.idm = b.idm

答案 2 :(得分:0)

尝试加入:

SELECT q1.id_member, q1.material_total, q2.cash_total
FROM (SELECT 1 'id_member',2 'material_total') AS q1
JOIN (SELECT 1 'id_member',4 'cash_total') AS q2
ON q1.id_member = q2.id_member