Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Menggunakan kolom turunan fungsi peringkat di mana klausa (SQL Server 2008)

Anda harus memindahkan operator WHERE ke atas daftar proyek tempat kolom RowNumber dibuat. Gunakan tabel turunan atau CTE:

SELECT * 
  FROM (
   SELECT *, ROW_NUMBER() OVER (...) as RowNumber
   FROM ...) As ...
 WHERE RowNumber = ...

CTE yang setara adalah:

WITH cte AS (
SELECT *, ROW_NUMBER() OVER (...) as RowNumber
       FROM ...)
SELECT * FROM cte 
WHERE RowNumber = ...   


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Database Cadangan SQL Server Express | Cara Menjadwalkan Otomatisasi dan Membersihkan Pencadangan SQL Express

  2. Sisipkan Massal File CSV yang Dikutip Sebagian di SQL Server

  3. Haruskah saya mengindeks bidang bit di SQL Server?

  4. Cara Memperbaiki "Pernyataan EXECUTE gagal karena klausa WITH RESULT SETS nya ditentukan 1 set hasil ..." di SQL Server

  5. Perilaku indeks unik, kolom varchar, dan spasi (kosong)