2016-10-07 7 views
0

dbに対して実行するSQLが与えられましたが、構文エラーが発生しています。私は見て、欠けている表現を見つけることができません。誰でも助けてくれますか?最初の "ts"に対応する6行目の42行目を示します。SQL構文エラー、私のクエリではありません

おかげで、 アンドリュー

SELECT "IWRKGRPQUEUESTATS"."CNAME", "IWRKGRPQUEUESTATS"."CHKEY3", "IWRKGRPQUEUESTATS"."NENTEREDACD", "IWRKGRPQUEUESTATS"."NINTERNTOEXTERNCALLS", "IWRKGRPQUEUESTATS"."NANSWEREDACD", "IWRKGRPQUEUESTATS"."TANSWEREDACD", "IWRKGRPQUEUESTATS"."TTALKACD", "IWRKGRPQUEUESTATS"."CHKEY4", "IWRKGRPQUEUESTATS"."DINTERVALSTART", "IWRKGRPQUEUESTATS"."NHOLDACD", "IWRKGRPQUEUESTATS"."THOLDACD", "IWRKGRPQUEUESTATS"."NABANDONEDACD", "IWRKGRPQUEUESTATS"."NABANDONACDSVCLVL1", "IWRKGRPQUEUESTATS"."NABANDONACDSVCLVL2", "IWRKGRPQUEUESTATS"."NABANDONACDSVCLVL3", "IWRKGRPQUEUESTATS"."NABANDONACDSVCLVL4" 
FROM "ADMIN"."IWRKGRPQUEUESTATS" "IWRKGRPQUEUESTATS" 
WHERE "IWRKGRPQUEUESTATS"."CHKEY4"=N'*' AND "IWRKGRPQUEUESTATS"."CHKEY3"<>N'*' 
AND ("IWRKGRPQUEUESTATS"."CNAME">=N'ATEAM' 
AND "IWRKGRPQUEUESTATS"."CNAME"<=N'STORES') 
AND ("IWRKGRPQUEUESTATS"."DINTERVALSTART">={ts '2016-08-17 00:00:00'} 
AND "IWRKGRPQUEUESTATS"."DINTERVALSTART"<{ts '2016-08-17 23:59:59'}) 
ORDER BY "IWRKGRPQUEUESTATS"."CNAME"; 
+0

有効なANSI SQL構文、excect '{TS ...}'。 – jarlh

+0

これまでのように中括弧は見たことがありません... – JohnHC

+0

これは間違っています: 'WHERE" IWRKGRPQUEUESTATS "。" CHKEY4 "= N '*'' –

答えて

1

{ts '2016-08-17 23:59:59'}は、JDBCのエスケープシーケンス(と私もODBCを考える)です。

ステートメントがサーバーに送信される前に、これらのエスケープシーケンスがクライアント側(ドライバー)によって適切な構文に変換されている必要があります。

だから、どんなSQLクライアントあなたはそれが明らかに(それがJDBCやODBCを使用していない)ことをサポートしていない使用している

+0

Oracle SQL Developerを使用しています。 "ts"を "to_date"に変更してフォーマットする必要がありますか? – AWooster

+0

@ AWooster:奇妙なことに、SQL DeveloperはJDBCを使用していますが、何らかの理由で本当に不平を言います(ただし、機能の実装に関するオラクルの判断を理解しようとはしませんでした)。 OracleのSQL Developerフォーラムで、有効なJDBC式がSQL Developerによって拒否された理由を質問することができます –

関連する問題