Я знаю, что этот вопрос задавался и обсуждался ранее. Ответы, которые я прочитал, являются главным образом мнением, поэтому я ищу что-то более техническое. Еще "под капотом".
Я использую SQL Server 2008. Я собираюсь написать запрос, который должен будет принять как минимум 11 входных данных. Пользователь может указать от 1 до 11 (+) из них. Они бывают разных типов (идентификаторы, сопоставление текста, география, полнотекстовое сопоставление, наборы записей и т. Д.). Это так же динамично, как вы можете получить с помощью SQL.
Я знаю, как это сделать без использования динамического SQL:
/*for simple match*/ WHERE @Input IS NOT NULL OR t.col = @Input
Это имеет недостатки из-за объединений и т. Д. Я никогда не использую динамический SQL. Но из того, что я прочитал, кажется, что это может быть дело с динамическим SQL.
Кто-нибудь может дать несколько технических указаний, пожалуйста?