powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите, пожалуйста
3 сообщений из 3, страница 1 из 1
Помогите, пожалуйста
    #32038566
MxN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MxN
Гость
Прошу извинить меня за глупый вопрос, но ОЧЕНЬ НУЖНО сделать, помогите пожалуйста, кто знает.

Есть запрос:

select account, code, info
from information
where code in ("N","TYPE","DAY","DAY_AR")

В результате получаю:

/*
account code info
-------- ------ ---------
805319 DAY 20/05/02
805319 N 123458
805319 TYPE SILVER
805320 DAY 23/05/02
805320 N 123456
805320 TYPE SILVER
805320 DAY_AR 23/05/02
*/

А надо получить в таком виде:

/*
account DAY N TYPE DAY_AR
------- -------- ------ ------ --------
805319 20/05/02 123458 SILVEL NULL
805320 23/05/02 123456 SILVER 23/05/02
*/

Как это сделать ????????
...
Рейтинг: 0 / 0
Помогите, пожалуйста
    #32038571
Sanek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Select INFO.*,
          DAY.info ,
          N.INFO,
          TYPE.INFO,
          DAY_AR.INFO
from information INFO 
left join information DAY on Day.account = INFO.account 
left join information N ON N.account = INFO.account 
left join information TYPE ON TYPE.account = INFO.account 
left join information DAY_AR ON  DAY_AR.account = INFO.account
...
Рейтинг: 0 / 0
Помогите, пожалуйста
    #32038602
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT account,
	MAX(CASE WHEN code='DAY' THEN info ELSE NULL END) AS DAY,
	MAX(CASE WHEN code='N' THEN info ELSE NULL END) AS N,
	MAX(CASE WHEN code='TYPE' THEN info ELSE NULL END) AS TYPE,
	MAX(CASE WHEN code='DAY_AR' THEN info ELSE NULL END) AS DAY_AR
FROM information 
WHERE code in ( "N" , "TYPE" , "DAY" , "DAY_AR" ) 
GROUP BY account


Правда у этого метода есть ограничение. Если для одного и того же account к примеру возможны 2 значения DAY, то в таком запросе естесственно отобразится только одно (наибольшее).
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите, пожалуйста
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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