Hier ist was ich versuche, ein neues CTE zu erstellen und alles aus currentWindow auszuwählen, wenn irgendwelche Daten darin vorhanden sind, wenn nicht das CTE alles von PastWindows enthalten sollte.Wie kann ich "auswählen, wenn vorhanden" oder "andere auswählen" auswählen?
currentWindow as (
select * from Window oew
where oew.StartDate <= GETDATE() and oew.EndDate >= GETDATE()
)
, PastWindows as
(
select * from Window oew
where oew.StartDate between DATEADD(YYYY, -1, GetDate()) AND GETDATE()
OR oew.EndDate between DATEADD(YYYY, -1, GetDate()) AND GETDATE()
)
So etwas wie dieses
FinalOEWindoToUse as
(
)
Ich verstehe, dass dies mit einer Case-Anweisung für eine einzelne Spalte kann getan werden, aber in diesem Fall habe ich alle wollen die Spalten aus Tabelle A, wenn Daten vorhanden sind, und alle Daten aus Tabelle B, falls vorhanden,
Verwenden Sie MS SQL Server oder Oracle? Markieren Sie keine nicht betroffenen Produkte. – jarlh
Bearbeitete den Post, SQL-Server. –
Sie wollen also die Daten von diesen beiden Abfragen? –