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

DESC dan ASC sebagai parameter dalam prosedur tersimpan

Nomor baris tidak dievaluasi pada setiap baris, namun pernyataan kasusnya jadi Anda terjebak dengan rownum apa pun masalahnya.

Coba ini sebagai gantinya:

            ROW_NUMBER() OVER (
                ORDER BY                    
                    CASE WHEN @orderby = 0 AND @orderdir = 1 THEN ne.[time] END DESC,    
                    CASE WHEN @orderby = 0 AND @orderdir = 2 THEN ne.[time] END ASC,    
                    CASE WHEN @orderby = 1 AND @orderdir = 1 THEN ne.lastedit END DESC,
                    CASE WHEN @orderby = 1 AND @orderdir = 2 THEN ne.lastedit END ASC,
                    CASE WHEN @orderby = 2 AND @orderdir = 1 THEN ne.title END ASC
                    CASE WHEN @orderby = 2 AND @orderdir = 2 THEN ne.title END DESC
                )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengonversi Stempel Waktu Unix ke Nilai Tanggal/Waktu di SQL Server

  2. Perbedaan waktu SQL antara dua tanggal menghasilkan jj:mm:dd

  3. Bagaimana cara mengeluarkan DateTime yang dapat dibatalkan dari database

  4. Bagaimana cara membuat prosedur tersimpan yang secara opsional akan mencari kolom?

  5. Cara memulihkan database SQL Server melalui kode C#