Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

If-else in SQL

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von ustasahi, 10 März 2017.

  1. ustasahi

    ustasahi Neuer Benutzer

    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'
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Bahnhof.

    Versuche Dein Problem bitte leicht verständlich und reproduzierbar darzustellen - das erhöht die Chancen auf Antworten signifikant.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden