If-else in SQL

ustasahi

Neuer Benutzer
Beiträge
2
Hallo zusammen bin relativ hier und habe gleich mal ne Frage, die mich seit 3 Tagen beschäftigt.
Ich hau mal meine SQL Abfrage hier rein, damit ihr sehen könnt wie das aussieht und was eig mein Ziel ist.

Mein Ziel ist es, dass eine Tabelle ausgeben wird mit den Spalten von der Tabelle entnahmeauftrag und noch zusätzlich drei Spalten 1. Pakete_azfgt_unterwegs 2. Pakete_azfgt_eingelagert 3. ful_packen.

Die Bedinung für Ful_Packen ist wie bei der Spalte "Pakete_azfgt_eingelagert" nur hier noch zusätzlich eine Bedingung (siehe Code).

Die Tabelle wird auch ausgegeben nur wird für jede Zeile ein N gesetzt, wobei das nur auf Zeilen zutreffen soll.

Ohje ziemlich kurz gefasst und durcheinander..ich hoffe mir kann einer helfen :/
Select--------------------------------------------------------------------------
select bewegungsart, auftragsnummer, entnahmeprioritaet,
tournummer, versandart, kundennummer, kundenname_1,
sonderbearbeitung, packlistendruck, bearbeitungsdatum,
bearbeitungsstatus, verladedatum, ladungsnummer, mandant, newdat,
( select count(*)
from pialeiazf_view
where pia_status < '42'
and auftragsnummer = ena.auftragsnummer
and mandant = ena.mandant
and buchungskreis = ena.quell_buchungskreis
) as pakete_azfgt_unterwegs,
( select count(*)
from pialeiazf_view
where pia_status = '42'
and lei_status = '99'
and auftragsnummer = ena.auftragsnummer
and mandant = ena.mandant
and buchungskreis = ena.quell_buchungskreis
) as pakete_azfgt_eingelagert,
( select
( CASE
WHEN ( select count(*)
from pialeiazf_view
where pia_status = '42'
and lei_status = '99'
and tau_status != ' '
and auftragsnummer = ena1.auftragsnummer
and mandant = ena1.mandant
and buchungskreis = ena1.quell_buchungskreis
) > 0
THEN 'J'
ELSE 'N' END
)
from entnahmeauftrag ena1 where ena1.auftragsnummer = ena.auftragsnummer
and ena1.mandant = ena.mandant
and ena1.quell_buchungskreis = ena.quell_buchungskreis
) as ful_packen
from entnahmeauftrag ena
where auftragskennung = 'O'
and bearbeitungsstatus < '70'
 
Werbung:
Zurück
Oben