Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
Есть таблица с настройками: global_variables(name char, data char), где name - имя настройки, data - значение В этой таблице находятся переменные которые определяют всякие ограничения, насройки и пр. Как написать запрос выводящий значение настройки или значени по умолчанию если такой настройки в таблице нет. Запросы типа select IsNULL(data,'Значение по умолчанию') from global_variables where name='Последняя дата распределения работ' возвращают ноль строк, а мне надо 'Значение по умолчанию' а такой запрос больно уж большой select case when exists(select data from global_variables where name='Последняя дата распределения работ') then (select data from global_variables where name='Последняя дата распределения работ') else 'Значение по умолчанию' end Нет ли чего попроще? Может кто подскажет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 09:47 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
в своё время сталкивался с такой проблемой.. ты оформляй это всё в SP а там используй case. надеюсь помог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 09:52 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
в своё время сталкивался с такой проблемой.. ты оформляй это всё в SP а там используй case. надеюсь помог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 09:56 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
1. select data from global_variables where name='Последняя дата распределения работ' IF @@ROWCOUNT = 0 select 'Значение по умолчанию' AS data 2. select data from global_variables where name='Последняя дата распределения работ' UNION ALL select 'Значение по умолчанию' AS data ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 10:03 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
2. SELECT TOP 1 data FROM (select data from global_variables where name='Последняя дата распределения работ' UNION ALL select 'Значение по умолчанию' AS data ) AS tmp1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 10:05 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
я так понимаю что нужно только одно значение select coalesce(max(data),'значение по умолчанию') from global_variables where name='Последняя дата распределения работ' еще лучше оформить это в виде функции, ведь наверняка захочется хранить значение переменных на каждый день ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 10:12 |
|
||
|
Как выбрать значение по умолчанию в пустой выборке
|
|||
|---|---|---|---|
|
#18+
Можно и так попробовать: select 1 as value into #tmp_defaults select isnull(n.data,'Значение по умолчанию') from global_variables n right join #tmp_defaults on n.name='Последняя дата распределения работ' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2001, 11:30 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32013759&tid=1825598]: |
0ms |
get settings: |
8ms |
get forum list: |
23ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 408ms |

| 0 / 0 |
