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

Ringkas berdasarkan minggu, bahkan untuk baris kosong

Klausa where WHERE (sales.transDate BETWEEN @fromDate AND @toDate) akan menghapus setiap minggu tanpa penjualan. Anda mungkin perlu melakukan subkueri untuk menarik transaksi dan kemudian menggabungkannya ke tabel minggu Anda.

SELECT Weeks.WeekNum, SUM(sales.quantity) AS sales
FROM Weeks LEFT OUTER JOIN 
 (
    SELECT *
    FROM sales 
    WHERE (sales.transDate BETWEEN @fromDate AND @toDate)
 ) sales
    ON Weeks.WeekNum = DATEPART(week, sales.transDate)
GROUP BY Weeks.WeekNum


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konversi tipe data datetime2 ke tipe data datetime kecil menghasilkan nilai di luar rentang.\r\nPernyataan telah dihentikan

  2. MSSQL 2008:Dapatkan catatan terakhir yang diperbarui berdasarkan bidang tertentu

  3. Cara Menangkap dan Menganalisis Acara SQL Server

  4. bagaimana kumpulan koneksi database memengaruhi kinerja?

  5. Konversikan kueri SQL Server ke MySQL