[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Sep 2006
    Beiträge
    3

    Question Subselect in case when auf DB2/400

    Hallo,
    ich habe folgendes Problem:
    Ich verwende einen subselct innerhalb einer "SELECT CASE WHEN" Anweisung zur Gültigkeitsprüfung von ko025:

    select
    case when ko025 in (SELECT sk025
    FROM Konto
    WHERE Firma = '10' and Jahr = 2006)
    then 1
    else 2
    end CCd

    Unter Oracle läuft das ohne Probleme.

    Auf einer AS/400 (I5) kommt bei gleicher Syntax folgende Fehlemeldung:
    "Vergleichsoperator IN ungültig"???
    Eine Gültigkeitsprüfung mit IN ist auf der I5 aber generell möglich;
    z.B. funktioniert folgendes:
    select
    case when ko025 in 'A B C'
    then 1
    else 2
    end CCd

    Heisst das ich kann hier keinen subselect innerhalb der select case when Anweisung verwenden??? oder muss hier syntaktisch was verändert werden????
    Ich hoffe hier kann jemand helfen, da es dringend ist!
    Vielen Dank im Voraus!!

    Florian

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Leider ist dem so:

    The search-condition in a searched-when-clause cannot contain a basic predicate with a subselect, a
    quantified predicate, an IN predicate using a subselect, or an EXISTS predicate.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Sep 2006
    Beiträge
    3
    ... gibt es einen work around der zum selben Ergebnis führt???

    Florian

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Naja, wie wärs irgendwie mit ein bisschen nachdenken ?
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Sep 2006
    Beiträge
    3
    du kannst mir glauben, dass ich über diesem Problem schon lange brüte...

    Eigentlich fast den ganzen tag (hätte eigentlcih ab 12 Wochenende...).
    Ich bin leider kein ausgebildeteer Programmierer und habe auch mit SQL nicht die Erfahrung wie vielleicht andere hier..
    Die Case When Anweisung benötige ich zur Ermittlung des Kennzeichens 1 oder 2 ... wenn ich hier innerhalb nicht auf eine andere Datei selektieren kann, wüsste ich mit meinen eben nur bescheidenen Mitteln nicht wie ich es machen könnte.

    Ich freue mich dennoch für jeden hier der größere Erfahrungen hat.
    Ebenso freue ich mich über Beiträge, die mir weiterhelfen ... auf hämische od. belehrende Antworten möchte ich - auch von Moderatoren - gerne verzichten!

    Gruß und schönes WE allen
    Florian

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.236
    Tut mir leid, wenn meine Antwort falsch rübergekommen ist.
    Aber leider wird hier des öfteren Programmieruntericht erteilt und dazu hatte ich im Moment nicht die Lust und Muße, da dies nicht in 5 Minuten abgehandelt ist.

    Also nichts für ungut
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

Similar Threads

  1. Kein Zugriff über QNTC auf Win-Share
    By marmart in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 25-09-07, 15:29
  2. QNTC Zugriff auf CD Laufwerk Fehlerhaft
    By pwrdwnsys in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-11-06, 15:34
  3. Status nach Druck nich SAV, sonder Drucker auf END
    By zannaleer in forum NEWSboard Drucker
    Antworten: 6
    Letzter Beitrag: 13-09-06, 10:35
  4. Ist SUBSELECT auf DB2/400 aus MS-Query möglich
    By danloc in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 17-12-04, 11:24

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •