Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

TSQL CASE z porównaniem if w instrukcji SELECT

Wybierz to samo w zewnętrznym zaznaczeniu. Nie możesz uzyskać dostępu do nazwy aliasu w tym samym zapytaniu.

SELECT *, (CASE
        WHEN articleNumber < 2 THEN 'Ama'
        WHEN articleNumber < 5 THEN 'SemiAma' 
        WHEN articleNumber < 7 THEN 'Good'  
        WHEN articleNumber < 9 THEN 'Better' 
        WHEN articleNumber < 12 THEN 'Best'
        ELSE 'Outstanding'
        END) AS ranking 
FROM(
    SELECT registrationDate, (SELECT COUNT(*) FROM Articles WHERE Articles.userId = Users.userId) as articleNumber, 
    hobbies, etc...
    FROM USERS
)x


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy muszę używać bloku try..catch i jawnego wycofywania w procedurze SQL Server?

  2. Zapytanie SQL, aby uzyskać wynik tylko w dwóch kolumnach

  3. SQL Server WYBIERZ OSTATNIE N rzędów

  4. Kolejność instalacji/odinstalowania VS 2008 i SQL Server 2008

  5. SQL Server 2008 Błąd logowania Windows Auth:Login pochodzi z niezaufanej domeny