ここから本文です

postgresqlで、ある日時の項目Aの型がtimestamptzの時、 抽出条件 A<= '2017/05/0...

kafka_f28さん

2017/6/2115:17:32

postgresqlで、ある日時の項目Aの型がtimestamptzの時、
抽出条件 A<= '2017/05/01 09:59:59'

にしています。

データの取得はできたのですが、
'2017/05/01 09:59:59'の部分をtimestampにするような型変換、または
Aをcharにするような型変換をしなくて大丈夫だったのでしょうか?
した方が良い場合、どういう型変換が良いのでしょうか?

閲覧数:
11
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

nora1962jpさん

2017/6/2120:53:38

PostgreSQLは日付/時刻型のデータ型のカラムとの比較では文字列リテラル側を比較対象のデータ型に変換するようになっています。
なので通常の日付・タイムスタンプを正しく表す文字列リテラルなら大丈夫です。
インデックスも使われます。

PostgreSQLにはTO_DATEやTO_TIMESTAMP関数もありますが、これらの関数は日付のチェックが甘い('2017-02-29'を3/1と変換する)ので使う際には気をつける必要があります。
ORACLEなどでは文字列リテラルを書式指定してTO_DATEで変換したほうが安心できるのですが。

  • 質問者

    kafka_f28さん

    2017/6/2216:00:52

    そのままで良いんですね。
    分かりやすい説明ありがとうございました。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。