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

Butuh bantuan untuk menemukan Kueri T-SQL yang benar

;WITH cte AS
(
SELECT *,
        DATEDIFF(DAY,0,DateRequested)-
        ROW_NUMBER() OVER (PARTITION BY UserId ORDER BY DateRequested) AS Grp
FROM YourTable  
WHERE Approved = 1 /*Presumably - but your example data doesn't show this.*/
)
SELECT UserId, 
       MIN(DateRequested) AS DateFrom, 
       MAX(DateRequested) AS DateTo  
FROM cte 
GROUP BY UserId,Grp


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konversikan Int ke bidang tanggal

  2. SELECT DISTINCT mengabaikan kasus yang berbeda

  3. cara menemukan ukuran baris dalam tabel

  4. sql server pilih kolom dengan nomor

  5. TSQL untuk mendapatkan catatan DISTINCT yang dipesan dan kemudian menerapkan nomor baris