0

以下の 2 つの mysql クエリを 1 つのクエリに結合するにはどうすればよいですか?

SELECT R12NC,  COUNT(*) AS `count1` FROM alink where Option_a = 1 GROUP BY  R12NC
SELECT R12NC,  COUNT(*) AS `count2` FROM alink where Option_x = 1 GROUP BY  R12NC
4

2 に答える 2

0

ふたつのやり方。2列だけが必要な場合は、UNIONを使用してください

SELECT R12NC,  COUNT(*) AS `count1` FROM alink where Option_a = 1 GROUP BY  R12NC
UNION
SELECT R12NC,  COUNT(*) AS `count2` FROM alink where Option_x = 1 GROUP BY  R12NC

3列が必要な場合は、次のようになります。

SELECT R12NC, SUM(CASE WHEN Option_a = 1 THEN 1 ELSE 0 END) as `count1`, 
    SUM(CASE WHEN Option_x = 1 THEN 1 ELSE 0 END) as `count2`
FROM alink
GROUP BY  R12NC
于 2012-11-21T20:20:12.690 に答える
0

ステートメントを使用してcase、集計関数にネストします。

SELECT R12NC,
       sum(case when Option_a = 1 then 1 else 0 end) as `count1`,
       sum(case when Option_x = 1 then 1 else 0 end) as `count2`
FROM alink
GROUP BY  R12NC
于 2012-11-21T20:18:06.470 に答える