Ich versuche derzeit, Aufträge in jedem Vorort zu zählen, die später als für einen Monat angefordert geliefert wurden, und die durchschnittliche Zeit, zu der sie verspätet waren.ORA-00904: "TOTAL_ORDERS": Ungültige Kennung
Ich habe dies bisher ohne die Parameterabfrage getan, damit der Benutzer den Monat eingibt, den sie sehen möchten.
SELECT s.suburbname,
Count(*) AS total_orders ,
("ORDER".ACTUALTIMEDELIVERED - "ORDER".CUSTREQTIME)/total_orders AS latetime
FROM "ORDER"
left join restaurant r
ON "ORDER".restaurantid = r.restaurantid
left join suburb s
ON r.suburbid = s.suburbid
WHERE "ORDER".deliveredflag = 'X'
AND "ORDER".ACTUALTIMEDELIVERED > "ORDER".CUSTREQTIME
GROUP BY s.suburbname
ORDER BY total_orders, latetime;
Allerdings ist es mir ein ORA-00904 werfen: "TOTAL_ORDERS": ungültige Kennung.
Ist es meine Gruppenklausel?
Update 1 Ich habe es geschafft zu lösen, danke euch allen! Aber jetzt habe ich ein anderes Problem. Ich kann nicht scheinen, INTERVALL-TAG ZU ZWEITEN Datentypen zu addieren, da es mich den Fehler wirft: ORA-00932: inkonsistente Datentypen: erwartete NUMMER erhielt INTERVALL-TAG ZU ZWEITEN.
Gibt es weg um den Unterschied in der Zeit zu summieren und zu mitteln?
Update 2
Ich habe es geschafft, alle mithilfe der Funktion EXTRACT meine Probleme zu lösen, die Stunden und Minuten extrahieren und sie alle zusammen gegen die Zählung summiert werden.
SELECT
s.suburbname,
Count(*) AS total_orders,
SUM(60*(Extract(hour from "ORDER".ACTUALTIMEDELIVERED) - Extract(hour from "ORDER".Custreqtime)) + Extract(minute from "ORDER".ACTUALTIMEDELIVERED) - Extract(minute from "ORDER".Custreqtime))as amt
FROM "ORDER"
left join restaurant r
ON "ORDER".restaurantid = r.restaurantid
left join suburb s
ON r.suburbid = s.suburbid
WHERE
"ORDER".deliveredflag = 'X'
AND
"ORDER".ACTUALTIMEDELIVERED > "ORDER".CUSTREQTIME
GROUP BY s.suburbname
ORDER BY s.suburbname desc;
Wenn Sie eine neue Frage haben, sollten Sie ein wenig arbeiten, um die Antwort selbst zu finden, dann fragen Sie eine neue Frage. So funktioniert es nicht. Sie haben keinen eigenen Post, um Unterstützung für Oracle-Syntax zu erhalten! Du gehst ein Buch und lernst zuerst. –
Entschuldigung. Ich habe es geschafft, mein im Update hervorgehobenes Problem zu lösen. Wird die Lösung für andere veröffentlichen. Es kann ihnen helfen – ABB25