ホームページ  >  記事  >  データベース  >  Oracleで指定された時間範囲をクエリする方法

Oracleで指定された時間範囲をクエリする方法

WBOY
WBOYオリジナル
2022-01-21 11:58:0544416ブラウズ

Oracle では、「between and」を使用して、指定した時間範囲のデータをクエリできます。構文は「select*from テーブル名 where field between to_date (開始時刻、開始時刻の形式) と to_date (終了時刻)」です。時間、終了時間の形式)」。

Oracleで指定された時間範囲をクエリする方法

このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。

Oracle で指定した時間範囲をクエリする方法

Oracle では、指定した時間範囲をクエリする場合は、 between 関数と to_date() 関数を使用できます。

to_date() および 24 時間表記と mm 分の表示:

1. Oracle の to_date 関数を使用して日付変換を行う場合、多くの Java プログラマは、「yyyy-MM」の形式を直接使用することがあります。 -dd HH:mm:ss」の形式で変換されますが、Oracle では「ORA 01810 形式のコードが 2 回表示されます」というエラーが発生します。

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;

その理由は、SQL では大文字と小文字が区別されず、MM と mm は同じ形式コードとみなされ、Oracle の SQL では分の代わりに mi が使用されるためです。

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;

2. 24 時間形式で表示したい場合は、HH24

select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from Dual; を使用します。 // mi は分です

select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from Dual;//mm は月を表示します oracle の to_date パラメータの意味

between と これは、エンドポイント値を含む完全に閉じられた間隔です。

注: 時間フィルタリングに to_date を使用する場合、たとえば、2015-02-28 はその日の 00:00:00 から計算されます。したがって、範囲が 2015-02-28 から 2015-03-01 である場合、時間範囲は実際には左側が閉じられ、右側が開きます。 2015年3月1日のデータは含まれておりません。

例は次のとおりです:

select * from tab where dtcol between to_date('2012-05-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2012-05-31 00:00:00','yyyy-mm-dd hh24:mi:ss')

推奨チュートリアル: "Oracle Tutorial"

以上がOracleで指定された時間範囲をクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。