Ich versuche, diese Erklärung zu bekommen zu arbeiten, aber es sagte, ich habe Fehler bei „INV.CaseQty = 1“SQL CASE WHEN Statement
ich es auf die Logik erhalten möchten:
when x = 1 then y = 1 else y
CASE WHEN INV.CaseUp = 1 then INV.CaseQty = 1 ELSE INV.CaseQty end
Würde schätzen die Hilfe aller
Hier meine SELECT-Abfrage aus einer gespeicherten Prozedur ist
select C.CustomerNum, ISNULL(ST.ShiptoNum,'') Shipto, I.InvoiceNum,
DatePart(yyyy,I.InvoiceDate) DeliveryYear,
DatePart(qq,I.InvoiceDate) DeliveryQuarter,
DatePart(MM,I.InvoiceDate) DeliveryMonth,
DatePart(WW,I.InvoiceDate) DeliveryWeek,
CAST(I.InvoiceDate as Date) DeliveryDate, INV.InventoryNum,
IP.InventoryPackageNum, ISNULL(CaseQty, 0) QTYinEach,
ID.Description,ISNULL(IT.Description,'No Type') SubCategory,
CASE WHEN INV.CaseUp = 1 then INV.CaseQty = 1
ELSE INV.CaseQty
end
original tabl
eDescription CaseQty caseup
Royal 5" Red Stripe Plastic Sip Stirrer 1000 1
Ecoproducts Plant Starch Knife 1000 0
Ecoproducts Plant Starch Fork 1000 1
Ecoproducts Plant Starch Spoon 1000 0
ich die SELECT-Abfrage von meinem Speicher Verfahren wollen die mit CaseUp = 1, sollte CaseQty Änderung auch in der Lage sein zu ändern 1 sein.
was wollen Sie erreichen, ist es eine Select-Anweisung? Veröffentlichen Sie die vollständige Abfrage für passende Antworten –
Ja, ich möchte es in einer Select-Anweisung verwenden. Wenn ich also eine IF-Anweisung ausführen soll, kann ich sie nicht in eine select-Anweisung einfügen. Ich könnte nur CASE verwenden, wie es scheint. Wie arbeite ich das an? – kate
Veröffentlichen Sie Ihre ausgewählte Abfrage, um anzuzeigen, was Sie erreichen möchten, oder atleast Tabellendaten und Ergebnisdaten nach Abfrage, um Ihre Anforderung zu verstehen –