SQL Server 2008, różne klauzule WHERE z jednym zapytaniem

Mam procedurę składowaną, która ma te same kolumny, ale z innymiWHERE klauzula.

Coś takiego.

SELECT
     alarms.startt, alarms.endt, clients.code, clients.Plant,
     alarms.controller, alarmtype.atype, alarmstatus.[text]
FROM alarms
INNER JOIN clients ON alarms.clientid = clients.C_id 
INNER JOIN alarmstatus ON alarms.statusid = alarmstatus.AS_id
INNER JOIN alarmtype ON alarms.typeid = alarmtype.AT_id

i umieściłem to samo zapytanie w 3 if (warunki), gdzieWHERE klauzula zmienia się zgodnie z parametrem przekazanym w zmiennej.

Czy muszę pisać cały ciąg w kółko dla każdego warunku w każdym, jeśli?

Czy mogę go zoptymalizować do jednego czasu i jedyne, co się zmieni, to klauzula WHERE?

questionAnswers(6)

yourAnswerToTheQuestion