2
我在我的DataTable SQL語句中有這個查詢,現在我混淆了,如何將日期參數傳遞給此查詢,日期只有2,startdate和enddate,但日期重複了幾次倍。C#將重複的參數傳遞給DataTable SQL語句
SELECT
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'B' OR
shift = 'E' OR
shift = 'F' OR
shift = 'G' OR
shift = 'H' OR
shift = 'J' OR
shift = 'P') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS P,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_8
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'B' OR
shift = 'N' OR
shift = 'O' OR
shift = 'S' OR
shift = 'T') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS S,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_7
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'B' OR
shift = 'M' OR
shift = 'Q') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS M,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_6
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'C') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS C,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_5
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'D') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS D,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_4
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'I') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS I,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_3
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'K') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS K,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_2
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'L') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102))) AS L,
(SELECT COUNT(shift) AS Expr1
FROM dbo.JadwalKerja AS JadwalKerja_1
WHERE (nip = dbo.JadwalDinas_DaftarKaryawan.NIP) AND (shift = 'R') AND (date >= CONVERT(DATETIME, '2015-12-01 00:00:00', 102)) AND (date <= CONVERT(DATETIME, '2015-12-31 00:00:00', 102)))
AS R
FROM dbo.JadwalDinas_DaftarKaryawan
ORDER BY Nama