以下の内容はhttps://var.blog.jp/archives/85933920.htmlより取得しました。
COMMENT
コメント一覧 (4)
1.
2022/02/04 02:32
::timestampはCASTなので、文字列型を他の型に変換するならパース(解析)してください。
postgresならto_timestamp
0
が
しました
3.
[管理人]
2022/02/05 16:40
>>1
timestamp without time zone 型の列に文字列でインサートする場合には 内部で 「::timestamp without time zone」 のキャストが発生するため 文字列型のまま入れたらどう変換されるかを示すためにキャストしています
また to_timestamp 関数はありますがドキュメントにも記載されている通り 特殊なフォーマットの文字列から タイムスタンプに変換するために使うものであり 一般的なタイムスタンプを表す文字列から変換するのであればキャストで十分かと思います
https://www.postgresql.jp/document/13/html/functions-formatting.html
===
to_timestampとto_dateは、単純なキャストでは変換できない入力フォーマットを処理するために存在します。 ほとんどの標準的日付および時刻のフォーマットに対しては、入力文字列を必要なデータ型に単純にキャストすれば動作し、その方がずっと簡単です。 同様に、to_numberも標準的な数値表現に対しては不要です。
===
0
が
しました
4.
2022/02/06 02:17
>>3
アイツラの言う一般的がズレてるんで頼らないようにするんですよ。
バッドノウハウの類いです。
統計インデックス壊れる、スキーマ検索パス一個目しか見なくなるバグも絶賛放置中です。
0
が
しました
2. z
2022/02/05 00:49
いまだに使ってるのか。今はもうMariadb一辺倒になったが。
0
が
しました