2017-04-07 40 views
0

我需要在固定「不是一個有效的月份」語句和查詢與MAX功能可以正常使用之下的幫助..不是有效的每月聲明同時查詢

SELECT MAX(Y.FILE_SUB_RET_DATE_TIME) FROM ADPDBA.WORK_REQUEST_FILE_TRANS_AUDIT Y WHERE Y.FILE_EVENT_TYPE = 'SUBMISSION' AND 
    Y.FILE_SUBMT_RETRL_STATUS = 'LEVEL1 POSTED' AND Y.FILE_SUB_RET_DATE_TIME >= '01-DEC-2015' AND Y.FILE_SUB_RET_DATE_TIME <= '03-FEB-2017' 
GROUP BY Y.WR_FILE_TRANS_INFO_ID 

輸出作爲跟隨...

12/11/2015 1:44:33 PM 
2/2/2017 3:42:02 PM 
2/2/2017 3:42:02 PM 

現在我需要重寫沒有MAX函數的查詢,這些是我在下面準備的查詢。但兩者顯示「不是有效的月」聲明..

SELECT X.WR_FILE_TRANS_AUDIT_ID FROM ADPDBA.WORK_REQUEST_FILE_TRANS_AUDIT X WHERE X.FILE_SUB_RET_DATE_TIME IN 
('20170202034202','20170202034202','20151211014433') 

SELECT X.WR_FILE_TRANS_AUDIT_ID FROM ADPDBA.WORK_REQUEST_FILE_TRANS_AUDIT X WHERE X.FILE_SUB_RET_DATE_TIME IN 
('2017-02-02 03:42:02.0','2017-02-02 03:42:02.0','2015-12-11 01:44:33.0') 

你能幫我擺脫這種錯誤請的......

+0

請出示X.FILE_SUB_RET_DATE_TIME的表定義 – OldProgrammer

+0

FILE_SUB_RET_DATE_TIME \t TIMESTAMP(6)\t \t 04-APR-17 –

+0

請不要使用還是'mysql'標籤acle問題,僅針對MySQL問題。 – Barmar

回答

1

我覺得你的問題是在你的日期格式。對於日期列,Oracle會嘗試將其轉換爲基於NLS默認設置的日期。爲了您的SQL,讓我們更具體,並告訴甲骨文究竟如何解釋日期字符串,如...

(假設DATE數據類型)

SELECT X.WR_FILE_TRANS_AUDIT_ID 
FROM ADPDBA.WORK_REQUEST_FILE_TRANS_AUDIT X 
WHERE X.FILE_SUB_RET_DATE_TIME IN 
     (TO_DATE('2017-02-02 03:42:02', 'YYYY-MM-DD HH24:MI:SS'), 
     TO_DATE('2017-02-02 03:42:02', 'YYYY-MM-DD HH24:MI:SS'), 
     TO_DATE('2015-12-11 01:44:33', 'YYYY-MM-DD HH24:MI:SS') 
    ); 

..或者像我剛纔看到您的評論在TIMESTAMP列

SELECT X.WR_FILE_TRANS_AUDIT_ID 
FROM ADPDBA.WORK_REQUEST_FILE_TRANS_AUDIT X 
WHERE X.FILE_SUB_RET_DATE_TIME IN 
     (TO_TIMESTAMP ('2017-02-02 03:42:02', 'YYYY-MM-DD HH24:MI:SS'), 
     TO_TIMESTAMP ('2017-02-02 03:42:02', 'YYYY-MM-DD HH24:MI:SS'), 
     TO_TIMESTAMP ('2015-12-11 01:44:33', 'YYYY-MM-DD HH24:MI:SS') 
    ); 
+0

我的時間戳,並試圖與時間戳記,它沒有獲取任何記錄...和數據庫記錄顯示AM/PM像下面12/11/2015 1:44: 33 PM 2/2/2017 3:42:02 PM 2/2/2017 3:42:02 PM –

+0

@RamKarlapudi因爲它是'pm'而不是'am'以下時間戳應該工作'TO_TIMESTAMP('2015- 12-11 13:44:33','YYYY-MM-DD HH24:MI:SS')','TO_TIMESTAMP('2017-02-02 15:42:02','YYYY-MM-DD HH24:MI :SS')'... – Plirkee