用途・目的
100本ノックを勉強して、個人的に苦手だと感じた箇所をまとめておき、今後の勉強に役立てる。
正規表現まとめ
特殊文字
特殊文字 | 役割 | 使用例 | 取得例 |
---|---|---|---|
^ | 先頭の文字(列)を指定 | ^a, ^[0-9] | abc, 0xx-xxxx-xxxx |
$ | 最後の文字(列)を指定 | 0$, [a-z]$ | xxx-xxxx-xxx0 ,baseball |
. | 任意の文字 | .る | 蹴る、放る、喋る |
* | 直前の文字(列)の繰り返し | おー*い | おーい、おーーい |
[] | 指定した文字 | ||
[] | 指定した文字 | --- | 補足: |
正規表現に関する詳細な情報は、
に書いてあるのでそちらを参照する。
PostgreSQLのデータ型の変換のまとめ
SQLの種類ごとデータ型の変換方法が異なり、ややこしいので、学んだものをメモする
変換前の型 - 変換後の型 | 関数 | 説明 |
---|---|---|
日付型 - 文字列型(YYYYMMDD形式) | to_char(col_name, 'YYYYMMDD') | 日付型のデータを持つカラムをYYYYMMDDの文字列形式に変換。 'YYYY-MM-DD'等間に文字を入れることも可能 |
文字列型(YYYYMMDD形式) - 日付型 | cast(col_name as date) to_date(col_name, 'YYYYMMDD') |
どちらも使える。 to_date()の型指定は'YYYYMMDD'できず、YYYY-MM-DDとして表示される。 |
数値型 - 日付型 | cast(cast(col_name as varchar) as date) | 一度数値を文字列型に変換して、文字列を日付に変換する処理をする |
epoc秒型 - 日付型(YYYYMMDD形式) | cast(to_timestamp(col_name) as date) | エポック秒形式から日付型に変換する。エポック秒形式のデータをto_timestamp()を使って変換すると、YYYYMMDD に加え、タイムゾーンの情報まで返すことになるため、日付のみ必要なら、 to_timestamp()の外側にcast(~~ as date)が必要 |
cast()とto_date()が混合しそう。(現に同じ役割を担う関数もあるし...)とりあえず、個人的にしっくり来ているcast()を中心にしっかり使えるようにする。