powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не возвращает результат клиенту
1 сообщений из 26, страница 2 из 2
Не возвращает результат клиенту
    #40013012
maxski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
flexgen,
кстати, у вас тут ( https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1313833&msg=21911027 ) странный код приведен:
Код: sql
1.
2.
3.
4.
5.
6.
select * from t1
where (f1 = @v1 or @v1 is not null)
and (f2 = @v2 or @v2 is not null)
and (f3 = @v3 or @v3 is not null)
and (f2 = @v4 or @v4 is not null)
and (f2 = @v5 or @v5 is not null)



объединено по "или".
Например, если f1 != @v1, а @v1 не null, то условие в скобках все равно true. Т.е выведет все строки.
если f1 = @v1 (т.е. ни f1, ни @v1 не пустые и равны друг другу), т.е это все равно будет подмножеством всех строк .

если @v1 is null, то ничего не выведет.
Вывод: либо всех строк при непустых @v1, @v2, @v3, @v4, @v5.
Либо ничего не выведет, если хотя бы один из @v1, @v2, @v3, @v4, @v5 пустой.

т.е зачем писать весь этот код,

можно просто написать
Код: sql
1.
select * from t1 where  @v1 and @v2 and @v3 and @v4 and @v5
...
Рейтинг: 0 / 0
1 сообщений из 26, страница 2 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Не возвращает результат клиенту
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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