
Oracle10gのsql分についての質問です。(WHERE句)
先ほどの続きになります。申し訳ございません。
日付型のフィールドに[2006/07/01 01:02:03]と、
日付と時刻のデータが入っています。
SELECT文で日付が[2006/07/01]のみのデータを
抽出する場合、TO_CHAR(フィールド名,'YYYY/MM/DD')と
教えていただき成功いたしました。
ところが、WHERE句にこれと同じ文を書くと、
「リテラルが書式文字列と一致しません」とエラーに
なります。
どうすれば良いのでしょうか?
宜しくお願い致します。
No.4
- 回答日時:
- where trunc(フィールド名,'dd')=to_date('2006/07/01','yyyy/mm/dd')
- where trunc(フィールド名,'dd')=to_date('2006/07/01','yyyy/mm/dd')
上記のいずれも文法的には間違いではありませんが、性能を意識した SQL 文を書くためには、
日付フィールド名 >= TO_DATE('2006-07-01', 'YYYY-MM-DD')
AND 日付フィールド名 < TO_DATE('2006-07-02', 'YYYY-MM-DD')
と書くようにする (フィールド名に関数を使わない) のが良いと思います。これは Oracle に限ったことではありません。
ちなみに、「リテラルが書式文字列と一致しません」はフォーマットの書き方に誤りがあるために発生するエラーです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessの数値から時間に変換す...
-
WHERE句にて「30日前から今日ま...
-
PL/SQLで、期間計算
-
VBAについて
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
重複するIDのデータを1行にま...
-
指定した年月までのデータを取...
-
yyyy/M/dをyyyy/MM/ddに変換
-
OSのシステム日付を変更して...
-
アクセスでの日付変換の仕方
-
LogParserを使用した前日分のイ...
-
エクセル上の8桁の数字を一括し...
-
DB2のSQL(日付)について
-
FIREBIRD
-
SQLサーバで和暦から西暦に変換...
-
wordの差し込み印刷での日付表示
-
Accessのマクロでモジュールを...
-
Statement ignored というエラー
-
callで順に実行されるプロシー...
-
ODBCリンクの際にACCESSでは読...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessの数値から時間に変換す...
-
SQLで部分的にGROUP BYしたいとき
-
重複するIDのデータを1行にま...
-
今日の日付が入った行のデータ...
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
SQLサーバで和暦から西暦に変換...
-
oracle 文字列 01:45 を時間に...
-
テーブルの主キーをdate型...
-
日付書式に変換でこまっています!
-
日付型なら変数の先頭になん...
-
Excelグラフの日付軸の日付がず...
-
wordの差し込み印刷での日付表示
-
WHERE句にて「30日前から今日ま...
-
エクセル 日付による並べ替え...
-
SQL/Loaderでの年月日時分秒の...
-
DB2のSQL(日付)について
-
日付時刻+連番の主キーをSQLだ...
-
SQL ブレーク処理について
-
Exel関数で誕生日がきたら...
-
VBAについて
おすすめ情報