#sql #sql-server
#sql #sql-сервер
Вопрос:
Я хочу написать SQL-запрос, в котором в таблице есть поля OriginalDocket, Docket, DiversionDocket, которые связаны
Declare @DespatchFrom date = '02-01-2021'
select OriginalDocket, Docket, DiversionDocket
from trans
where DespatchDateTime >= @DespatchFrom
and originaldocket <> ''
and DiversionDocket <> ''
Выше я хочу написать, чтобы показать, как
Код для 2-го изображения:
select t.OriginalDocket, t.Docket, t.DiversionDocket, t2.DiversionDocket as DiversionDocket2
from trans t, trans t2
where t.DespatchDateTime >= @DespatchFrom
and t.originaldocket <> ''
and t.DiversionDocket <> ''
and t2.OriginalDocket = t.DiversionDocket
and t2.diversiondocket <> ''
Комментарии:
1. Пожалуйста, не используйте изображения для данных, используйте форматированный текст.
2. Evolve — не используйте объединения в старом стиле
3. В чем ваш вопрос? У вас есть проблема (помимо ужасного использования
,
вFROM
предложении)?
Ответ №1:
Попробуйте выполнить этот запрос:
select
inner.OriginalDocket,
outer.OriginalDocket,
inner.DiversionDocket,
outer.DiversionDocket as DiversionDocket2
from
docketTable as inner
join
docketTable as outer on inner.Docket = outer.OriginalDocket
where
inner.DespatchDateTime >= @DespatchFrom
and inner.originaldocket <> ''
and inner.DiversionDocket <> ''