2013-04-05 78 views
0

您能告訴我如何將這兩個COUNT放入一個select中嗎?兩個COUNT到一個SELECT

/*Pocet treninku ucast*/ 
SELECT Jmeno, COUNT(Ucast) 
FROM Hraci 
INNER JOIN Ucast_trenink2 ON Ucast_trenink2.ID_hrace_ucast=Hraci.IDHrace 
INNER JOIN Seznam_treninku ON Seznam_treninku.ID_treninku=Ucast_trenink2.ID_treninku_ucast 
INNER JOIN Kategorie ON Kategorie.IDkategorie=Seznam_treninku.Kategorie 
WHERE (Ucast='TRUE')AND(Kategorie.IDkategorie = 1) AND Datum >= '1/1/2013' AND Datum < '9/1/2014' 
GROUP BY Jmeno; 
/*Pocet treninku neucast*/ 
SELECT Jmeno, COUNT(Ucast) 
FROM Hraci 
INNER JOIN Ucast_trenink2 ON Ucast_trenink2.ID_hrace_ucast=Hraci.IDHrace 
INNER JOIN Seznam_treninku ON Seznam_treninku.ID_treninku=Ucast_trenink2.ID_treninku_ucast 
INNER JOIN Kategorie ON Kategorie.IDkategorie=Seznam_treninku.Kategorie 
WHERE (Ucast='FALSE')AND(Kategorie.IDkategorie = 1) AND Datum >= '1/1/2013' AND Datum < '9/1/2014' 
GROUP BY Jmeno; 

非常感謝

+0

你能搞清楚自己的要求?什麼是2選一個選擇?你是否想要合併查詢 – 2013-04-05 10:46:22

回答

0

您可以使用這樣的事情:

SELECT 
    Jmeno, 
    SUM(CASE WHEN Ucast = 'False' then 1 end) as count_false, 
    SUM(CASE WHEN Ucast = 'True' then 1 end) as count_true 
FROM ... 
WHERE (Kategorie.IDkategorie = 1) AND Datum >= '1/1/2013' AND Datum < '9/1/2014' 
GROUP BY Jmeno;