В принципе, мне нужно создать список элементов из базы данных SQL, однако пользователь может выбрать фильтр для любой комбинации из 7 фильтров, а также выбрать колонку для заказа, а также порядок по указанию.Сложное сочетание сортировки, упорядочивания, фильтрации SQL Server
Как вы можете себе представить, это заканчивается большим количеством различных комбинаций кода и набор данных достаточно велик, поэтому я бы хотел избежать этого в приложении.
В моей хранимой процедуре до сих пор я пытался:
Построение строки запроса, хотя это довольно просто и легко следовать, он оставляет приложение с открытым для SQL инъекций, поэтому я предпочел бы избежать этого.
Я также попытался использовать набор операторов IF ELSE
для запуска надлежащего параметризованного SQL, однако это быстро становится огромным деревом и будет кошмаром для поддержания.
Я не первый человек, который нуждался в таком решении, и должен быть лучший способ, чем выше? Кроме того, в качестве побочного вопроса есть хороший способ упорядочивать и упорядочивать по направлениям параметризованным образом, помимо выполнения множества IFs?
Если вы можете уменьшить фильтры 'и (FLD1 = @ filter1 или @ filter1 является нулевым)' вы должны прочитать это http://www.sommarskog.se/dyn-search-2008.html –