Tôi có một truy vấn sử dụng WHERE
mệnh đề và tôi tình cờ sử dụng chính xác WHERE
mệnh đề đó trong nhiều truy vấn trên bảng này (et al).
Truy vấn là:
SELECT
DATENAME(DW, [AtDateTime]) AS [Day of Week]
,COUNT(*) AS [Number of Searches]
,CAST(CAST(COUNT(*) AS DECIMAL(10, 2))
/ COUNT(DISTINCT CONVERT(DATE, [AtDateTime])) AS DECIMAL(10, 2))
AS [Average Searches per Day]
,SUM(CASE WHEN [NumFound] = 0 THEN 1 ELSE 0 END)
AS [Number of Searches with no Results]
,CAST(CAST(SUM(CASE WHEN [NumFound] = 0 THEN 1 ELSE 0 END)
AS DECIMAL(10, 2)) / COUNT(*) AS DECIMAL(10, 4))
AS [Percent of Searches with no Results]
FROM [DB].[dbo].[SearchHistory]
WHERE
[CustomerNumber] <> '1234' AND [CustomerNumber] <> '5678'
GROUP BY DATENAME(DW, [AtDateTime]), DATEPART(DW, [AtDateTime])
ORDER BY DATEPART(DW, [AtDateTime])
Phần tôi muốn thay đổi là WHERE
mệnh đề, thay vào đó cho phép tôi sử dụng bảng để nếu tôi phải thêm số khách hàng bị bỏ qua, tôi không phải cập nhật tất cả các truy vấn của mình. (Và có khá nhiều truy vấn có cùng WHERE
mệnh đề này.)