lutzs Geschrieben 2. September 2002 Geschrieben 2. September 2002 Hallo, hier meine SQL Anweisung, die einfach nicht funktionieren will: Die erste DECODE- Bedingung wird problemlos ausgeführt, bei der zweiten Anweisung bleibt das zu füllende Feld = 0 oder leer. Was mache ich falsch? SELECT DECODE(d.ccy_n_euritg,'1', (SELECT a.sea_m_bkgpos * d.ccy_n_eurcvrrat FROM g_ccy d WHERE d.ccy_n_int = i_sec.ccy_n_int), '0', (SELECT a.sea_m_bkgnom * d.ccy_n_eurcvrrat) FROM g_ccyexr c, i_sec, a WHERE c.ccy_n_int = i_sec.ccy_n_int AND c.ccy_d_dat = (SELECT MAX(c.ccy_d_dat) datum FROM g_ccy c, I_SEC b WHERE c.ccy_n_int = b.ccy_n_int GROUP BY c.ccy_n_int))) EURO FROM [...] WHERE [...] ... Danke, Stephanie
Gnomeline Geschrieben 2. September 2002 Geschrieben 2. September 2002 Hallo Du, ich denke, das Problem ist schlichtweg eine Klammer zu viel, unten rot gekennzeichnet: SELECT DECODE(d.ccy_n_euritg,'1', (SELECT a.sea_m_bkgpos * d.ccy_n_eurcvrrat FROM g_ccy d WHERE d.ccy_n_int = i_sec.ccy_n_int ), '0', (SELECT a.sea_m_bkgnom * d.ccy_n_eurcvrrat) FROM g_ccyexr c, i_sec, a WHERE c.ccy_n_int = i_sec.ccy_n_int AND c.ccy_d_dat = (SELECT MAX(c.ccy_d_dat) datum FROM g_ccy c, I_SEC b WHERE c.ccy_n_int = b.ccy_n_int GROUP BY c.ccy_n_int ) ) ) EURO Ansonsten kann ich nix erkennen. Gruss, Gnomeline
lutzs Geschrieben 2. September 2002 Autor Geschrieben 2. September 2002 Hallo, mir ist aufgefallen, dass ich den DEFAULT Wert vergessen habe. Diesen Wert habe ich hier auf "11" gesetzt. Führe ich nun die SQL- Anweisung aus, wird jedes Feld, welches normalerweise = 0 ist und mit dem Ergebnis der SELECT- Anweisung gefüllt werden soll, mit "11" geladen. Ich sehe aber nicht, woran es liegen soll. Weiss jemand von Euch Rat? SELECT DECODE (g_ccy.ccy_n_euritg, '0', (SELECT (i_sea.sea_m_bkgpos * g_ccyexr.ccy_n_spt) FROM g_ccyexr, i_sea, i_sec, g_ccy WHERE g_ccyexr.ccy_n_int = i_sec.ccy_n_int AND g_ccyexr.ccy_d_dat = (SELECT datum from test WHERE g_ccyexr.ccy_n_int = test.ccy_n_int) AND g_ccyexr.ccy_n_int = i_sea.ccy_n_int AND i_sec.sec_n_int = i_sea.cus_n_int), '11' ) EURO FROM I_SEA, I_SEC, I_CUS, G_CCY, G_CCYEXR WHERE [...] Danke, Stephanie
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden