SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Microsoft SQL Server » Выделить данные из 2-х таблиц (Получить данные)
Выделить данные из 2-х таблиц [сообщение #2004] Thu, 06 April 2023 18:40 Переход к следующему сообщению
Mansso в настоящее время не в онлайне  Mansso
Сообщений: 1
Зарегистрирован: April 2023
Junior Member
Всем привет.Подскажите пож-та,как решить проблему.
Есть 2 таблицы


DECLARE @Table1 table (tid int,qty decimal(25,6))

insert into @Table1 (tid,qty)
values(2239,1)
,(2239,1)
,(2239,1)

DECLARE @Table2 table (tid int,qty decimal(25,6))
insert into @Table2 (tid,qty)
values(2239,3)


select *
from @Table1

except

select *
from @Table2

На выходе полчаем 1 запись
tid qty
2239 1

Понимаю,что запрос глупый,но как мне получить итоговую таблцу,в которой будут такие строчки


DECLARE @Table1 table (tid int,qty decimal(25,6))
insert into @Table1 (tid,qty)
values(2239,1)
,(2239,1)

select *
from @Table1

Т.е.,так

tid qty
2239 1
2239 1
Re: Выделить данные из 2-х таблиц [сообщение #2038 является ответом на сообщение #2004] Mon, 10 April 2023 14:02 Переход к предыдущему сообщению
shigor в настоящее время не в онлайне  shigor
Сообщений: 26
Зарегистрирован: March 2023
Географическое положение: НиНо
Junior Member
если я правильно интерпретировал Вашу цель, т.к. точных условий не озвучено, то
;with t1 as (
  select tid, qty, sum(qty) over (partition by tid order by (select null) rows between unbounded preceding and current row) cumulative_qTy from @Table1 
)
select t1.tid, t1.qty
  from t1 left join @Table2 t2 on t1.tid = t2.tid and t1.cumulative_qTy >= t2.qty
where 
  t2.tid is null
Предыдущая тема: Катастрофическое снижение производительности при распараллеливании запроса
Следующая тема: Обновление статистики FULLSCAN и без него
Переход к форуму:
  


Текущее время: Sun Dec 29 05:38:50 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00779 секунд