J'ai une requête qui utilise une WHERE
clause, et il se trouve que j'utilise exactement la même WHERE
clause dans de nombreuses requêtes sur cette table (et al).
La requête est:
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])
La partie que je souhaite modifier est la WHERE
clause, pour me permettre d'utiliser un tableau afin que si je dois ajouter un numéro de client à ignorer, je n'ai pas à mettre à jour toutes mes requêtes. (Et il y a pas mal de requêtes qui ont cette même WHERE
clause.)