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

SQL:Użyj pól obliczeniowych z SELECT w klauzuli WHERE

Użyj CTE (Common Table Expression) - rodzaj widoku "wbudowanego" tylko dla następnej instrukcji:

;WITH MyCTE AS
(
    SELECT 
        RANK() OVER(PARTITION BY XXX ORDER BY yyy,zzz,oooo) as ranking, 
        * 
    FROM SomeTable
) 
SELECT * 
FROM MyCTE
WHERE ranking = 1 --> this is now possible!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tabela tymczasowa serwera SQL Server zniknie

  2. Automatyczne zbieranie danych:Pliki bazy danych i dyski logiczne w MS SQL Server

  3. Obniż koszty licencjonowania SQL Server

  4. Kiedy muszę używać początku/końca bloków i słowa kluczowego Go w programie SQL Server?

  5. Scal wartości wierszy w CSV (vel GROUP_CONCAT dla SQL Server)