Je cherche un moyen d'ajouter dynamiquement un filtre à mon état sans utiliser SQL dynamique.T-SQL: Clé Dynamic Where de l'instruction SQL normale
Je souhaite sélectionner tous les ordinateurs d'une table, mais lorsque je transmets un identifiant d'ordinateur au sp, je souhaite obtenir uniquement cet ordinateur.
En fait, j'essayer ceci sur
DECLARE @ComputerFilter AS INT
DECLARE @ComputerID AS INT
SELECT Computername
FROM Computer
WHERE (ComputerID = @ComputerID) OR (@ComputerFilter IS NULL))
Mais cela est 100 fois lent alors ce statment et Touque aussi longtemps que SELECT * FROM Computer
SELECT Computername
FROM Computer
WHERE ComputerID = @ComputerID
Y at-il un moyen d'accélérer cette statment up ou existe-t-il un autre moyen de résoudre ce problème avec un select und sans SQL dynamique?
Que doit faire le système lorsque @ComputerFilter n'est pas nul? – Thomas
Ensuite, il filtre par l'ordinateur :) D'accord, je peux écrire (ComputerID = @ ComputerID) OU (@ ComputerID est nul) – Torben