Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
Ну чтонибудь похожеее на select * Where Case When @a is null Then True Else a = @a End ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2001, 13:26 |
|
||
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
помоему нет но можно так ( ( @a is not null and a = @a ) or ( @a is null ) ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2001, 13:32 |
|
||
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
Можно еще короче ( a = @a or @a is null ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2001, 13:49 |
|
||
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
Вообще Case можно писать и в выражениии Where, и в Order by и где угодно. Но вопрос как я понял в другом. В TSQL нет типа boolean и соответственно нет переменных true и false. Т.е. если уж дословно (или "дооператорно") переписывать запрос, то надо написать что-то вроде: select * Where 1=Case When @a is null 1 when a = @a then 1 else 0 End Ну еще from нужен конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2001, 14:13 |
|
||
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
Еще короче: where (a=IsNull(@a,a)) -- не знаю как будет работать если a содержит NULL. -- ну не оптимизируется такой поиск - т.е. для таблиц с миллионами строк не стоит применять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2001, 15:52 |
|
||
|
Можно ли использовать оператор Case в выражениии Where
|
|||
|---|---|---|---|
|
#18+
А в чем выражается нерабочесть такой конструкции? Я использую точно такую же конструкцию, только проверяю на Is Null значение конкретного поля таблицы. Все работает. MS SQL 2000. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2001, 21:36 |
|
||
|
|

start [/forum/topic.php?fid=46&gotonew=1&tid=1826747]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 272ms |
| total: | 400ms |

| 0 / 0 |
