Thema: Join-Frage

Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.427 Beiträge
 
Delphi 7 Professional
 
#2

AW: Join-Frage

  Alt 1. Okt 2020, 11:13
Warum Cross Join? Willst Du das wirklich? https://www.w3resource.com/sql/joins/cross-join.php

Achtung, alte SQL-Syntax, da für mich leichter lesbar:
SQL-Code:
select
  0 as Nr,
  a.watenr as Artikel,
  sum(o.ltrest) as Menge,
  case
    when week(o.ltlite,3) < 10 then concat(year(o.ltlite),'0',week(o.ltlite,3))
    else concat(year(o.ltlite),week(o.ltlite,3))
  end as KW,
  o.tebez1 as ArtikelBez
from
  liefersituation o,
  liefersituation a
where o.ltlite >= current_date
and week(o.ltlite,3) < week(current_date,3) + 25)
and o.watenr = a.watenr
and a.lpdivk = 'SSC'
group by
  o.watenr,
  kw
order by
  o.watenr,
  kw
Kommt das Deinem Wunsch näher?

Du möchtest zu den Daten aus liefersituation, die ein Datum von heute oder in der Zukunft haben und deren Woche innerhalb des nächsten halben Jahres liegt, alle weiteren Datensätze aus liefersituation bekommen, bei denen lpdivk gleich 'SSC' ist und die über die gleiche watenr verfügen?

Oder eventuell dashier?
SQL-Code:
select
  0 as Nr,
  o.watenr as ArtikelNr,
  sum(o.ltrest) as Menge,
  case
    when week(o.ltlite,3) < 10 then concat(year(o.ltlite),'0',week(o.ltlite,3))
    else concat(year(o.ltlite),week(o.ltlite,3))
  end as KW,
  o.tebez1 as ArtikelBez
from liefersituation o
where o.ltlite >= current_date
and week(o.ltlite,3) < week(current_date,3) + 25
and exists
(
  select 1 from liefersituation a
  where a.watenr = o.watenr
  and a.lpdivk = 'SSC'
)
group by
  o.watenr,
  kw
order by
  o.watenr,
  kw
Aber sicher bin ich mir da nicht.
  Mit Zitat antworten Zitat