У меня есть таблица с именем remit_bill, и я хотел бы получить максимальную дату из этой таблицы, используя следующий запрос, но он продолжает показывать мне ошибки. Есть несколько дат под тем же bill_no.i хотите получить максимальную дату с coll_amt value.any помощь с этим будет оценена.Как получить максимальную дату в Oracle с помощью подзапроса
SQL> desc remit_bill
Name Null? Type
------------------------------- -------- ----
SC_CD NOT NULL VARCHAR2(2)
RMT_NO NOT NULL VARCHAR2(6)
RMT_DT DATE
BILL_NO NOT NULL VARCHAR2(6)
COLL_AMT NOT NULL NUMBER(10,2)
Запрос:
select sum(COLL_AMT) FROM REMIT_BILL AS P
WHERE bill_no = '887332' and rmt_dt=(SELECT MAX(rmt_dt) FROM REMIT_BILL AS P2
where P2.bill_no=P.BILL_NO
--GROUP BY COLL_AMT
)
GROUP BY COLL_AMT
Сообщение об ошибке:
select sum(COLL_AMT) FROM REMIT_BILL AS P
*
ERROR at line 1:
ORA-00933: SQL command not properly ended
SQL>
Изображение:
Oracle не поддерживает ключевое слово 'AS' для * табличных * псевдонимов. Просто используйте 'FROM REMIT_BILL P' –
Это не совсем так, XMLTABLE и JSON_TABLE могут быть псевдонимы с использованием« AS », а предложение подзапроса факторинга является обязательным. – Husqvik