2016-11-09 16 views
-2

SELECTサービス、COUNT(*)Total_queue、tqueue FROM COUNT(*)AS balance_queue 内のステータス( '8'、 '4')とSTATUS( '4') AND 'BETWEEN get_tiket AS 2016年11月10日午後12時00分01' 秒mysqlの1つのグループ内でステータスが異なる2つのカウント?

ではなく、ただ1ステータスが

を働いている場合は、作業サービスによって AND '2016年11月10日午後11時59分59秒' GROUP 2つの数字のステータス(8と4)の2つの結果のTotal_queueを持っていますが、balance_qu total_queueにちょうど一つの状態とEUE(4)、

DATA TABLE 
----------------------------------- 
    Total_queue | balance_queue 
.------------------------------------- 
     ___ 7 __ | ___5_____   
- 

量7(4)

メモ2つのステータスによって生成された(8及び4)balance_queueで
量5は、一つの状態によって生成されます。ステータス4キューイング-----------------
ステータス8は、すべてのステータス(8および4)キューイングによって生成されたtotal_queueのキューイングのために、

と呼ばれます。

+0

はあなたのwhere句に「中」または=を欠落していない使用してもらえますか?私はあなたの質問が何であるかを突き止めることを終えていないので、問題をより詳しく説明できますか? – Nambu14

+0

WHERE句に正確に 'STATUS( '4')'とは何ですか?それはまったくSQLとは思われません。 – ebyrob

+0

ステータス4キューステータスのステータス番号ちょうど呼び出されたステータスに使用されました – Heri

答えて

0

あなたは

SELECT services, 
    SUM(CASE WHEN STATUS IN ('8','4') THEN 1 ELSE 0 END) AS Total_queue, 
    SUM(CASE WHEN STATUS = '4' THEN 1 ELSE 0 END) AS balance_queue 
FROM tqueue 
WHERE STATUS IN ('8','4') 
    AND get_tiket BETWEEN '2016-11-10 00:00:01' AND '2016-11-10 23:59:59' 
GROUP BY services 
+0

はい、うまくいきました – Heri

関連する問題