У меня есть панель поиска с различными параметрами поиска, я хочу, чтобы запрос SQL выполнял поиск только с заполненными текстовыми полями
Я сделал простой SP, который работал нормально, когда у меня была панель поиска только с двумя параметрами поиска (Имя и Код), использующими операторы if (не лучшая практика). Однако теперь, когда у меня был поиск bbars с 4-5 элементами, операторы IF не кажутся наилучшей практикой для производительности
Это процедура, которую я сделал для случая, когда у меня было только 2 варианта поиска:
@Code_client nvarchar(50),
@Intitule_client varchar(100)
as
IF (@Code_client is not NULL AND @Code_client!='')
BEGIN
IF (@Intitule_client IS not NULL AND @Intitule_client!='')
select * from Clients where Code_client=@Code_client and Intitule_client=@Intitule_client
ELSE
select * from Clients where Code_client=@Code_client
END
ELSE IF (@Intitule_client is not null AND @Intitule_client!='')
BEGIN
select * from Clients where Intitule_client=@Intitule_client
END
Но для этого случая у меня есть 4 варианта поиска:
<div id="chercher_employe" class="Rechercher">
<ul>
<li>
<asp:TextBox runat="server" ID="chercher_employe_Nom" CssClass="Input" placeholder="Nom employe"></asp:TextBox>
</li>
<li>
<asp:TextBox runat="server" ID="chercher_employe_Departement" CssClass="Input" placeholder="Departement"></asp:TextBox>
</li>
<li>
<asp:TextBox runat="server" ID="chercher_employe_occupation" CssClass="Input" placeholder="Occupation"></asp:TextBox>
</li>
<li>
<asp:TextBox runat="server" ID="chercher_employe_IntituleProfil" CssClass="Input" placeholder="Profil"></asp:TextBox>
</li>
<li>
<asp:LinkButton runat="server" CssClass="button"> <i class="fas fa-search"></i> </asp:LinkButton>
</li>
</ul>
</div>
Я не могу найти другой способ, кроме использования операторов if с C # или SQL, какие-либо предложения, пожалуйста?