SELECT
DISTINCT rc.ID AS ID_ROBOT_CARGA,
ral.CIF AS CIF,
rc.ID_CONTRATO AS REFERENCIA,
CASE
WHEN rc.RESPUESTA_INTERCHANGE = 1 THEN 'SI'
WHEN rc.RESPUESTA_INTERCHANGE = 0 THEN 'NO'
ELSE NULL
END AS POPUP_INTERCHANGE
FROM
ROBOT_CARGA rc
FULL JOIN ROBOT_ALTA_LINEA ral ON
rc.ID = ral.ID_ROBOT_CARGA
WHERE
rc.RESPUESTA_INTERCHANGE = 1
AND rc.FECHA_RESPUESTA_INTERCHANGE > TO_CHAR(TRUNC(SYSDATE, 'day'), 'yyyy-mm-dd hh24:mi:ss'); --FAILING HERE
所以我想要它今天在 WHERE 條件下使用,但是它一直在拋出錯誤 ORA-01861,我猜這是因為 SYSDATE ..

uj5u.com熱心網友回復:
什么是FECHA_RESPUESTA_INTERCHANGE 列的資料型別?應該是 DATE。
如果是這樣,則不要將其與字串進行比較。SYSDATE是一個回傳的函式DATE,所以這只是
and rc.FECHA_RESPUESTA_INTERCHANGE > trunc(sysdate)
表明它有效的示例:
設定日期格式(您不必這樣做;這無關緊要):
SQL> alter session set nls_date_format = 'dd.mm.yyyy hh24:mi:ss';
Session altered.
樣品表:
SQL> create table robot_carga as
2 select sysdate - 2 fecha_respuesta_interchange from dual;
Table created.
查詢哪些comapres fecha_respuesta_interchangeto trunc(sysdate):
SQL> select *
2 from robot_carga
3 where fecha_respuesta_interchange < trunc(sysdate);
FECHA_RESPUESTA_INT
-------------------
08.01.2022 14:35:46
SQL>
看?沒有錯誤。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/407677.html
標籤:
