powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Аналогия с CASE для нескольких полей
2 сообщений из 2, страница 1 из 1
Аналогия с CASE для нескольких полей
    #37931563
Unknown_qweqwe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация следующая. Имеется несколько условий. По каждому из них необходимо вывести набор различных полей. Как лучше сделать, выполнив раз проверку условия, и вывести необходимые поля, чтобы не писать проверку для каждого поля через CASE, скажем. То есть, чтобы не выглядело так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SELECT 
	CASE
		WHEN @a='1'
			THEN field1
	END
	CASE
		WHEN @a='1'
			THEN field2
	END
	CASE
		WHEN @a='2'
			THEN field3
	END
	CASE
		WHEN @a='2'
			THEN field4
	END
FROM table1
...
Рейтинг: 0 / 0
Аналогия с CASE для нескольких полей
    #37931961
Mr.DKSoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не скажу про "тяжесть" запроса , но при условии что field1,field3 и field2,field4 одного типа
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
select  F1,F2
 from
(select 1 as Why,
           Field1 as F1,
           Field2 as F2
  from table
UNION 
select 2 as Why,
           Field3 as F1,
           Field4 as F2
  from table
) T
where T.Why=1 


для 1-го условия
Код: sql
1.
where T.Why=2

для 2-го
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Аналогия с CASE для нескольких полей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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