2

我将以下 sql 发送到 oracle db,并获取ORA-00907: missing right parenthesis.

SELECT "LOGS"."ID", 
   "LOGS"."USER_ID", 
   "LOGS"."TIMESTAMP", 
   "LOGS"."SESSION_ID"        
FROM "LOGS"
INNER JOIN "USERS" ON ("LOGS"."USER_ID" = "USERS"."USER_ID") 
WHERE ("USERS"."USERNAME" IS NOT NULL 
  AND "LOGS"."TIMESTAMP" <= TO_TIMESTAMP(2013-03-26 23:59:59, 'YYYY-MM-DD HH24:MI:SS.FF')
  AND "LOGS"."TIMESTAMP" >= TO_TIMESTAMP(2013-03-26 00:00:00, 'YYYY-MM-DD HH24:MI:SS.FF') )

这个问题的原因可能是什么?

4

1 回答 1

5

您的时间戳文字格式不正确。你忘记了引号。写

TO_TIMESTAMP('2013-03-26 23:59:59', 'YYYY-MM-DD HH24:MI:SS.FF')

甚至(因为您使用的是 SQL 标准时间戳文字格式)

TIMESTAMP '2013-03-26 23:59:59'

代替

TO_TIMESTAMP(2013-03-26 23:59:59, 'YYYY-MM-DD HH24:MI:SS.FF')
于 2013-03-27T08:43:25.320 回答