Ich habe eine Tabelle @ rpt_year_month, die die letzten 6 Monate in YYYYMM Form enthält und nichts anderes (es gibt andere Informationen, aber es ist auf Zeilen mit diesen 6 Monaten begrenzt; 6 Gesamtzeilen). Ich versuche, es mit einer Tabelle zu verbinden, die Informationen Monat für Monat segmentiert hat, jedoch einige "Materialien" haben keine Daten für einige der Monate. Ich habe ein Beispiel dafür, was ich den Zug wollen wie unten für ein bestimmtes Material zu suchen:Include NULL in Join (bereits mit linken Join)
Allerdings, wenn ich es für etwas anderes laufen, als auf einem bestimmten Material Beitritt (wie Sie sehen werden in meinem Code) gibt es keine Nullen zurück. Gibt es eine Möglichkeit, die obigen Ergebnisse zu reproduzieren, so dass jedes Material auf diese Weise angezeigt wird? Mein Code ist unten:
With picard as (
Select c.client
,COALESCE(c.fiscal_year_month_key,r.cal_year_month) as cal_year_month
,c.material_nbr
,c.plant
,c.stock_qty
,c.stock_value from @rpt_year_month r
LEFT JOIN
@cmbnd_inv_period_qty c ON
r.cal_year_month = c.fiscal_year_month_key
AND material_nbr = '100000009428'
)
Select * into #worf from picard;
Select * from #worf
Drop Table #worf;
Dies half mir zu bekommen, was ich tun musste, obwohl ich am Ende einige Temp Tabellen zusammen mit dem Cross Join verwendet. Vielen Dank! – Moomba44