Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Select all еслине указан параметр. / 6 сообщений из 6, страница 1 из 1
16.11.2020, 19:33
    #40019099
kvitnitskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
Доброго времени суток господа форумчане.
Подскажите пожалуйста, можно ли в запросе как то обозначить, что если параметр не указан, то делать выборку по всем значениям?

Код: sql
1.
  AND mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392')



З.Ы. ЗАпрос отправляю из под Excel VBA
...
Рейтинг: 0 / 0
16.11.2020, 20:16
    #40019119
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
kvitnitskiy
Подскажите пожалуйста, можно ли в запросе как то обозначить, что если параметр не указан, то делать выборку по всем значениям?

Код: sql
1.
  AND mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392')

Конечно
Код: sql
1.
  AND mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392') OR @parametr is null
...
Рейтинг: 0 / 0
16.11.2020, 20:17
    #40019120
vikkiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
kvitnitskiy,

на t-sql есть варианты по натягиванию совы на глобус - засовывания такой логики в WHERE - но не без граблей
в данном случае без магического шара непонятно где собственно параметр и в какой он форме

скалярным значением, как-то вдруг табличным {один параметр - множественные значения одновременно} и как он парсится..
или под параметром подразумевается произвольный набор стрингов с разделителем (через запятую) который может быть и нулевой длинны..

при таком подходе не проще-ли будет сам текст запроса динамически формировать
на клиенте в VBA в зависимости от логики на основе выбранных параметров?
(с отсылом обратно в ветку программирования с [VB]A или офисом)
...
Рейтинг: 0 / 0
16.11.2020, 20:35
    #40019129
kvitnitskiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
авторпри таком подходе не проще-ли будет сам текст запроса динамически формировать
на клиенте в VBA в зависимости от логики на основе выбранных параметров?
Спасибо, так и сделал ))
...
Рейтинг: 0 / 0
17.11.2020, 12:37
    #40019357
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
alexeyvg
kvitnitskiy
Подскажите пожалуйста, можно ли в запросе как то обозначить, что если параметр не указан, то делать выборку по всем значениям?

Код: sql
1.
  AND mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392')


Конечно
Код: sql
1.
  AND mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392') OR @parametr is null

Скобки!
Код: sql
1.
  AND (mseg.[MATNR: Material Number] IN ('000000000083744391', '000000000083744392') OR @parametr is null)
...
Рейтинг: 0 / 0
17.11.2020, 15:03
    #40019482
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Select all еслине указан параметр.
vikkiv
не проще-ли будет сам текст запроса динамически формировать

Могут быть (хотя, впрочем, могут и не быть) трудности с кешированием плана, т.ч. если критично, то нужно будет это проверять.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Select all еслине указан параметр. / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]