sql >> データベース >  >> RDS >> Oracle

Oracleは2つの異なる日付を比較します

    to_date()の入力文字列 関数がパターンと一致しません。値には-が含まれます 区切り文字として使用しますが、パターンでは/を使用します :

    入力フォーマットとパターンを揃えると、これは機能するはずです:

    datetrx <= to_date('2014-07-16 00:00:00','yyyy-mm-dd hh24:mi:ss')
    

    私は個人的にto_date()よりもANSIタイムスタンプリテラルを好みます ポータブルでタイピングが少ないため、機能します:

    datetrx <= timestamp '2014-07-16 00:00:00'
    

    ここで提供される文字列の形式は常にであることに注意してください ISO形式。

    補足:
    daterx列の値を見たときに表示される「形式」 そのデータを表示するために使用するSQLクライアント(SQL * Plus、SQL Developerなど)によって適用されます。

    値自体はフォーマットなしで保存されます サーバー上。 DATEのフォーマット 値は常にです SQLクライアント(またはアプリケーション)によって実行されます:



    1. mySQLのクロス集計ビュー?

    2. MYSQLテーブルに新しい列を追加しようとしたときに接続が失われました

    3. 以前のデータをいくつか削除した後、PostgreSQLのテーブルでIDカウントを再開するにはどうすればよいですか?

    4. さまざまなファイルでPDO接続オブジェクトを使用する方法