あなたはそれがSUM(CASE文の使用して取得することができます。私はここにサンプル設定した
drop table if exists sandiklar;
create table if not exists sandiklar(tur text, EVET int, HAYIR int, BOS int, GECERSIZ int);
insert into sandiklar values
('MM', 100, 220, 310, 410),
('MM', 110, 230, 320, 420),
('MM', 120, 230, 360, 450),
('M', 110, 210, 370, 420),
('M', 140, 250, 320, 470),
('M', 120, 250, 330, 430),
('MB', 110, 260, 310, 490),
('MB', 150, 210, 310, 430),
('MB', 130, 210, 310, 430);
SELECT SUM(CASE WHEN TUR = 'MM' THEN EVET ELSE 0 END) as EvetMM,
SUM(CASE WHEN TUR = 'MM' THEN HAYIR ELSE 0 END) as HayirMM,
SUM(CASE WHEN TUR = 'MM' THEN BOS ELSE 0 END) as EvetMM,
SUM(CASE WHEN TUR = 'MM' THEN GECERSIZ ELSE 0 END) as GecersizMM,
SUM(CASE WHEN TUR = 'M' THEN EVET ELSE 0 END) as EvetM,
SUM(CASE WHEN TUR = 'M' THEN HAYIR ELSE 0 END) as HayirM,
SUM(CASE WHEN TUR = 'M' THEN BOS ELSE 0 END) as EvetM,
SUM(CASE WHEN TUR = 'M' THEN GECERSIZ ELSE 0 END) as GecersizM,
SUM(CASE WHEN TUR = 'MB' THEN EVET ELSE 0 END) as EvetMB,
SUM(CASE WHEN TUR = 'MB' THEN HAYIR ELSE 0 END) as HayirMB,
SUM(CASE WHEN TUR = 'MB' THEN BOS ELSE 0 END) as EvetMB,
SUM(CASE WHEN TUR = 'MB' THEN GECERSIZ ELSE 0 END) as GecersizMB
FROM sandiklar
WHERE TUR IN ('MM','M','MB');
drop table if exists sandiklar;
| EvetMM | HayirMM | EvetMM | GecersizMM | EvetM | HayirM | EvetM | GecersizM | EvetMB | HayirMB | EvetMB | GecersizMB |
|-------:|--------:|--------|------------|--------|---------|--------|------------|--------|---------|--------|------------|
| 330 | 680 | 990 | 1280 | 370 | 710 | 1020 | 1320 | 390 | 680 | 930 | 1350 |
を:。。http://rextester.com/SIO50162
Wowwのthatsは本当に速い私の複数選択で任意のパフォーマンスの差がありますクエリとあなたのもの? – Martin
TURにインデックスがある場合は、 'WHERE TUR IN( 'MM'、 'M'、 'MB')'を追加できます – McNets