SQLで文字列置換をするにはREPLACE関数を使用することで可能となります。類似の関数にTRANSLATE関数がありますが、こちらは文字列単位ではなく1文字ずつ文字単位で置換します。 ここではPostgreSQLでの実行サンプルをベースに …

SQLで文字列置換をするにはREPLACE関数を使用することで可能となります。類似の関数にTRANSLATE関数がありますが、こちらは文字列単位ではなく1文字ずつ文字単位で置換します。 ここではPostgreSQLでの実行サンプルをベースに …
SQLで文字列を結合(連結)して取得するためにはCONCAT関数やCONCAT_WS関数、文字列結合子「||」を使用することで可能となります。DBMS毎で微妙に違いはありますが、ここではPostgreSQLでの実行サンプルをベースに説明して …
SQLで複数のSELECTで問い合わせた結果を連結したいという場合は集合演算子関数と言われる「UNION」や「UNION ALL」演算子を使用することで取得可能となります。 イメージ図 UNIONは重複行を削除して取得するので「A & …
SQLでシステム日付を取得するにはMySQLやPostgreSQlとOracleでは少し異なるのでメモしておきます。 システム日付を取得するSQL:MySQL、PostgreSQL date型で取得、time型で取得、timestamp型で …
OracleでのTRUC関数と類似したものにPostgreSQLではDATE_TRUNC関数があります。 DATE_TRUNC関数は「DATE_TRUNC([‘精度’],[列名])」形式で指定する事で取得できます。 …
SQLで最大値と最小値を求めるにはMAX関数とMIN関数を使用します。 使用例 サンプルテーブル「goods」 クエリー(SQL) サンプルテーブル「goods」のtype_codeの最大値と最小値を抽出しているサンプルとなります。 [cr …
IN句をEXISTS句へ変換するとパフォーマンスが向上すると言われることがあるので IN句からEXISTS句への変換例をメモしておきます。 サンプルテーブル 以下の商品テーブル「goods」と属性コードテーブル「type_code」を元に説 …
SQLで指定した件数のみ取得する場合、MySQLやPostgreSQLではLIMIT句を使用します。 OracleではLIMIT句は使用できないのでROWNUMを使用します。 使用例 サンプルテーブル「goods」 クエリー(SQL) クエ …
SQLでGROUP BYとCOUNTを使用して重複行をカウントする方法です。 使用例 サンプルテーブル「goods」 クエリー(SQL) GROUP BYでカウントしたい列を指定し、COUNTでGROUP BYに指定した列を指定することで重 …
SQLでSELECT結果の重複行を削除するためにはDISTINCTを使用します。 使用例 サンプルテーブル「goods」 クエリー(SQL) SELECTの直後にDISTINCTを指定することで重複行を除外することが出来ます。 [crayo …