SQL-Fehler [1427] [21000]:

Adriano10

Benutzer
Beiträge
19
SELECT * FROM APPSREAD.XXHM_JIRA_ORDERS_V xjov
WHERE TO_CHAR(CREATION_DATE, 'YYYYMMDD') >= TO_CHAR(CURRENT_DATE - 1, 'YYYYMMDD')
AND TO_CHAR(CREATION_DATE, 'YYYYMMDD') < TO_CHAR(CURRENT_DATE, 'YYYYMMDD') ORDER BY CREATION_DATE asc;

wenn ich diese Abfrage auszuführen versuche kriege ich immer diese Fehlermeldung
ORA-01427: Unterabfrage für eine Zeile liefert mehr als eine Zeile

Bitte helfen Sie mir...

Vielen Dank im Voras
 
Werbung:
Das ist nicht MS SQL, sondern Oracle (laut Fehlermeldung und verwendeten Funktionen)

Das SQL selbst ist nicht Ursache für den Fehler, sondern vermutlich das SQL in dem View der abgefragt wird.
Entweder direkt den View zeigen (DML) und das DML der dort verwendeten Tabellen oder mit den Admins/Herstellern reden.
 
Stichprobe machen und die (durchsuchte / Ergebnis-)Datenmenge auf einen Zeitraum einschränken, der möglichst klein / ungewöhnlich ist. Dann verschwindet der Fehler ggF.
 
Stichprobe machen und die (durchsuchte / Ergebnis-)Datenmenge auf einen Zeitraum einschränken, der möglichst klein / ungewöhnlich ist. Dann verschwindet der Fehler ggF.
Wie meinst du genau "auf einen Zeitraum einschränken" ich komme mit der Sql-Abfrage nicht gut, wenn Sie mir das genau sagen könnten, würde mir sehr geholfen.

Danke aber für die Rückmeldung
 
Wie meinst du genau "auf einen Zeitraum einschränken"
Eine Einschränkung ist in SQL die WHERE Clause. In Deinem Statement befindet sich bereits eine, die auch bereits einen Zeitraum begrenzt/einschränkt. Das musst Du stärker machen.
Also nicht nur einschränken auf Creation_date bis heute, sondern z.B. Creation_Date bis heute -100 Tage oder sowas.

Aber nochmal:
Der Fehler kommt nicht aus Deiner Abfrage, sondern ziemlich sicher aus dem View darunter,
FROM APPSREAD.XXHM_JIRA_ORDERS_V xjov
Dieser View ist fehlerhaft konstruiert bzw. müsste irgendwo dokumentiert sein, welche weiteren Spalten ebenfalls und wie eingeschränkt werden müssen.
Wenn Du diesen View selbst geschrieben hast, poste das Create Statement des Views.

Der Vorschlag "Stichprobe" ist nur etwas Bastelei, hilft aber am Ende nicht für eine solide Lösung.
 
SELECT * FROM APPSREAD.XXHM_JIRA_ORDERS_V xjov
WHERE TO_CHAR(CREATION_DATE, 'YYYYMMDD') >= TO_CHAR(CURRENT_DATE - 1, 'YYYYMMDD')
AND TO_CHAR(CREATION_DATE, 'YYYYMMDD') < TO_CHAR(CURRENT_DATE, 'YYYYMMDD') ORDER BY CREATION_DATE asc;
müsste auch so gehen:
Code:
    SELECT * FROM APPSREAD.XXHM_JIRA_ORDERS_V xjov
    WHERE CREATION_DATE >= CURRENT_DATE - 1
    AND CREATION_DATE < CURRENT_DATE ORDER BY CREATION_DATE asc;
Dabei fällt mir auf, der Vorschlag von oben (current_date -100) ist Blödsinn, weil es ja nur um einen Tag geht.
 
Also ich alle Spalten selectiert und wenn ich eine Spalte Rechnungsnummer rausnehme, dann funktioniert, wird mehr keine Fehlermeldung ausgegeben.. Aber diese Spalte brauche ich auch
 
Werbung:
Zurück
Oben