Ich brauche eine Flagge erstellen alle Room_IDs
zu identifizieren, wo die folgenden erfüllt ist:TSQL: bedingte Abfrage Ausgabe
- ein „Qc-“
Status
innerhalb einesHotel_ID
vorhanden ist. - die "Qc-"
Status
hat eine entsprechende nicht "Qc-"Status
(z. B. 'qc-besetzten' & 'besetzt'). - Die "Qc-"
Status
muss eine kleinereRoom_ID
haben als die nicht "Qc-"Status
. (ZBStatus
= 'qc besetzten' hat eineRoom_ID
= 1 undStatus
= 'besetzt' hat eineRoom_ID
= 5)
Dies ist eine vereinfachte Tabelle (TableX) verwende ich als Beispiel:
**Hotel_ID Room_Id Status**
1 1 vacant
1 2 qc-occupied
1 3 vacant
2 1 occupied
2 2 qc-vacant
2 3 vacant
3 1 qc-vacant
4 1 vacant
4 2 occupied
4 3 qc-vacant
5 1 vacant
ich brauche die folgenden als Ergebnis:
**Hotel_ID Room_Id Status flag**
1 1 vacant 0
1 2 qc-occupied 0
1 3 vacant 0
2 1 occupied 0
2 2 qc-vacant 1
2 3 vacant 1
3 1 qc-vacant 0
4 1 vacant 0
4 2 occupied 0
4 3 qc-vacant 0
5 1 vacant 0
Vielen Dank im Voraus!
Was haben Sie versucht und welche Probleme haben Sie festgestellt? "Ich brauche" zeigt nicht viel Forschung und Arbeit. – HABO
Es tut mir leid, wenn das unhöflich schien, ich bin völlig stecken .. Ich kann keinen Weg sehen, es zum Laufen zu bringen. Ich habe ein Flag erstellt, um einen Status mit seinem QC-Gegenstück zu aggregieren. Flag 1 = FALL WENN [Status] = 'qc-besetzt' oder 'belegt' DANN 'belegt' WANN [Status] = 'qc-frei' oder 'frei' DANN 'frei' ENDE, Flag 2 = FALL WENN [Status] wie 'qc -%' dann 'QC Order' ELSE 'keine QC Order' END, rn = ROW_NUMBER() über (Partition von Hotel_ID Bestellung von Room_Id) –