Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.02.2022, 11:25   #1
fikelost
Новичок
Джуниор
 
Регистрация: 06.02.2022
Сообщений: 1
По умолчанию запрос MS SQL

Добрый день!

помогите составить запрос
имеется таблица, в которой по одному ид может быть от одной до двух строк
хотелось бы объединить запросом строки с одним ид, при этом чтобы пустые строки одной строки заполнились значениями другой с таким же ид
fikelost вне форума Ответить с цитированием
Старый 06.02.2022, 12:49   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Код:
select t1.id, coalesce(t1.s1, t2.s1) as s1,
coalesce(....) as s2,  
....
from ( select id, s1, s2, s3, s4 from t where s1 is null and d1 is null
        ) t1
left join ( select id, s1, s2, s3, s4 from t where s2 is null and d2 is null 
       ) t2 on t2.id =t1.id
ЕСЛИ исходная таблица именно такова (пустые поля строго чередуются)

P.S. .... означает заполнять аналогично

а можно и так
Код:
select t00.id, t1.s1, t2.s2
from (select distinct id from t ) t00
left join ( select id, s1 from t where s1 is not null ) t1 on t00.id =t1.id
left join ( select id, s2 from t where s2 is not null ) t2 on t00.id =t2.id
... -- и аналогично для оставшихся полей
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 06.02.2022 в 13:03.
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SQL запрос в php - запрос в базу данных так, чтобы еще возвращалось значение, сколько строк затронуто volni PHP 29 16.09.2019 11:49
Запрос в sql 2005 - SQL Server a.n.o.n.i.m SQL, базы данных 8 31.03.2016 17:01
Запрос с CASE переделать в запрос с PIVOT (MS SQL Server 2005) Машуля SQL, базы данных 4 06.05.2010 21:09
Создание новых таблиц в MS SQL SERVERE через SQL запрос в Delphi S_Yevgeniy Помощь студентам 1 27.10.2009 06:26
SQL запрос на основе другого SQL запрса... Timoxa БД в Delphi 1 07.01.2007 18:15