私は、以下のSQLサーバで実行される簡単なケース式を持っています。私は、結果がHRSが12以上、HRSが25以上、HRSが45以上などであることを期待していました。しかし、私の結果は12 HRS以上12 HRSしか返しません。誰かが私を啓発してくれますか。あなたは間違った方法での例を命じたのでSQLでのケース式
おかげで、 ジョー
SELECT
STORE,
CASE
WHEN HOURS >12 THEN 'Over 12 HRS'
WHEN HOURS >25 THEN 'Over 25 HRS'
WHEN HOURS >45 THEN 'Over 45 HRS'
WHEN HOURS >55 THEN 'Over 55 HRS'
WHEN HOURS >75 THEN 'Over 75 HRS'
WHEN HOURS >94 THEN 'Over 94 HRS'
ELSE 'Less 12 HRS'
END AS HOURS,
COUNT (ID) AS PRD
FROM
(
SELECT
ID,
STORE,
HOURS
FROM TABLE A
)X
GROUP BY STORE,
CASE
WHEN HOURS >12 THEN 'Over 12 HRS'
WHEN HOURS >25 THEN 'Over 25 HRS'
WHEN HOURS >45 THEN 'Over 45 HRS'
WHEN HOURS >55 THEN 'Over 55 HRS'
WHEN HOURS >75 THEN 'Over 75 HRS'
WHEN HOURS >94 THEN 'Over 94 HRS'
ELSE 'Less 12 HRS'
END
それは短絡(免責事項:ほとんどの時間)ためです。最初の「真の」状態を評価すると、それは停止します。だから、あなたの '時代 'の時代を変えてみてください(時> 94時...時> 75 ....' – Lamak