sql >> Databáze >  >> RDS >> Mysql

MySQL - Kombinace více podmínek WHEN v CASE

co třeba tohle?

SELECT  CASE 
          WHEN org.size IN (0, 1) THEN '<26'
          WHEN org.size = 2 THEN '26-50'
          WHEN org.size = 3 THEN '51-100'
          WHEN org.size = 4 THEN '101-250'
          WHEN org.size = 5 THEN '251-500'
          WHEN org.size = 6 THEN '501-1000'
          WHEN org.size = 7 THEN '1001-5000'
        ELSE '5000+' END AS Size, ....

Problém je v tom, že seskupujete záznamy org.size způsobující <26 ve dvou různých skupinách, protože jsou původně 0 a 1 .

To bude fungovat,

GROUP BY CASE 
          WHEN org.size IN (0, 1) THEN '<26'
          WHEN org.size = 2 THEN '26-50'
          WHEN org.size = 3 THEN '51-100'
          WHEN org.size = 4 THEN '101-250'
          WHEN org.size = 5 THEN '251-500'
          WHEN org.size = 6 THEN '501-1000'
          WHEN org.size = 7 THEN '1001-5000'
        ELSE '5000+' END



  1. Existuje SQL Server Profiler pro SQL Server Express?

  2. Jak získat století z data v Oracle

  3. Jak nainstaluji adaptér Rails MySQL?

  4. Jak změnit hodnotu pro innodb_buffer_pool_size v MySQL na Mac OS?