Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
21.11.2013, 13:01
|
|||
---|---|---|---|
|
|||
Использоване CTE и условия IF |
|||
#18+
Код: plaintext 1.
Здраствуйте, В хр. процедуре пишу код: Код: sql 1. 2. 3. 4. 5. 6. 7.
Получаю ошибку: Сообщение 156, уровень 15, состояние 1, строка 43 Неправильный синтаксис около ключевого слова "IF". А так: Код: sql 1. 2. 3. 4. 5. 6.
данные выводятся Подскажите, можно ли использовать логические условия типа IF вместе с CTE? И как мне быть, если в зависимости от разных условий мне нужно вывести разный набор данных из табличного выражения? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:09
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
Нельзя. Особенно это досадно, если надо написать IF EXISTS() для, например, рекурсивного CTE. Но CTE - это просто часть одного-единственного запроса, живущее только до конца выполнения этого запроса. Так что "разный набор данных" возможен только в виде INION [ALL] и с соответствующими условиями в WHERE ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:11
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
Опечатался - не INION, а UNION, конечно же ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:14
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
авторИ как мне быть, если в зависимости от разных условий мне нужно вывести разный набор данных из табличного выражения? Убрать CTE и положить результат (sql-запрос) в табличную переменную\временную таблицу. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:50
|
|||
---|---|---|---|
|
|||
Использоване CTE и условия IF |
|||
#18+
Спасибо всем, очень досадно... ладно, буду что-нибудь придумывать ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:53
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
Bryk_AlienВ хр. процедуре пишу код: Код: sql 1. 2. 3. 4. 5. 6. 7.
Получаю ошибку: так а чем не устраивает такое? Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 13:59
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
ShakillBryk_AlienВ хр. процедуре пишу код: Код: sql 1. 2. 3. 4. 5. 6. 7.
Получаю ошибку: так а чем не устраивает такое? Код: sql 1. 2. 3. 4. 5.
Условие может быть вне таблицы TTT ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 14:01
|
|||
---|---|---|---|
|
|||
Использоване CTE и условия IF |
|||
#18+
Shakill, Да там я "догадался" написать универсальный запрос, который выводит данные для трёх состояний - с различной группировкой, количеством и названием полей. для нескольких довольно различных по устройству отчётов... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 14:05
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
Bryk_AlienДа там я "догадался" написать универсальный запрос, который выводит данные для трёх состояний - с различной группировкой, количеством и названием полей. для нескольких довольно различных по устройству отчётов... А поместить cte в представление ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
21.11.2013, 14:13
|
|||
---|---|---|---|
Использоване CTE и условия IF |
|||
#18+
GloryBryk_AlienДа там я "догадался" написать универсальный запрос, который выводит данные для трёх состояний - с различной группировкой, количеством и названием полей. для нескольких довольно различных по устройству отчётов... А поместить cte в представление ? Да там с параметрами наверное, лучше table valued function ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=46&tablet=1&tid=1704306]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
150ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 254ms |
0 / 0 |