powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Распределение данных по столбцам
5 сообщений из 5, страница 1 из 1
Распределение данных по столбцам
    #40060954
elay13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую! Подскажите , как распределить данные. После join двух таблиц нужно сделать выборку.

Запрос :

select abc.phone,def.id
from abc
left join def
on abc.id=def.id

Phone-номер телефона.
Для некоторых id есть сразу несколько телефонов. К примеру: id123 7788, id123 9988.
Подскажите, как мне сделать запрос, в котором будет столбец, с данными по второму телефону.
С мои запросом всё хорошо, но при наличии >1 телефона, он учитывает рандомный.
Примерный итоговый вид:
id phone phone 2
123 7788 9888
...
Рейтинг: 0 / 0
Распределение данных по столбцам
    #40060969
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
elay13,

так?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
;with data(id,phone) as 
(
	  select 1, '1122'
union all select 1, '2233'
union all select 2, '7235'
union all select 3, '5288'
union all select 3, '6288'
union all select 4, '0001'
)
, data2(n,id,phone) as 
(
select 
	ROW_NUMBER() over (partition by id order by id) [n]
	,id
	,phone
from data
)
select 
	d1.id
	,d1.phone [phone1]
	,d2.phone [phone2]
from data2 d1 
left join data d2 on d1.id=d2.id and d1.phone<>d2.phone
where n=1

...
Рейтинг: 0 / 0
Распределение данных по столбцам
    #40060972
elay13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komrad, спасибо , подскажите если делать через join, могу просто не использовать ROW_NUMBER() или кардинально другой подход ?
...
Рейтинг: 0 / 0
Распределение данных по столбцам
    #40060973
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
elay13
komrad, спасибо , подскажите если делать через join, могу просто не использовать ROW_NUMBER() или кардинально другой подход ?

ну уберите row_number() и where n=1
если результат устроит, то почему нет?
...
Рейтинг: 0 / 0
Распределение данных по столбцам
    #40060974
elay13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komrad, Ещё раз, огромное спасибо. Второй день подряд спасаете:D
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Распределение данных по столбцам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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