SQL– category –
SQL関連のカテゴリ
-
SQL
SQL:グループ内で最大値の行を取得したい時の書き方
SQLを使用してデータを集計していると、「グループごとに最大値を持つ行そのものを取得したい」という場面は非常に多くあります。 例えば、以下のような要件です。 部署ごとに最も給与が高い社員の行を取得したい 商品ごとに最新の更新日時のレコードを取... -
SQL
SQL:前の行の値、次の行の値を取得したい時は
SQLで集計や分析をしていると、 「1つ前の行の値と比較したい」 「次の行の値を参照したい」 「前回との差分を出したい」 といったケースは非常によくあります。 このようなときに使うのが、ウィンドウ関数(分析関数)のLAG と LEAD です。 この記事では... -
SQL
SQL:切り捨て・切り上げをしたい時の TRUNC / CEIL
SQLで数値や日付を扱っていると、「小数点以下を切り捨てたい」「必ず切り上げたい」といった場面は頻繁にあります。そのような時に使う代表的な関数が TRUNC と CEIL です。 本記事では、それぞれの役割・違い・具体的な使用例を、数値と日付の両方でわか... -
SQL
SQL:構成比を出したい時に使う RATIO_TO_REPORT
SQLで売上構成比・割合・比率を求めたい場面はよくあります。そんなときに便利なのが RATIO_TO_REPORT 関数です。 この記事では、 RATIO_TO_REPORT とは何か 基本的な使い方 よくある使用例(売上構成比) 注意点・代替手段 をわかりやすく解説します。 RA... -
SQL
SQL 0除算エラー を防ぐ方法 | NULLIFで安全に割り算する書き方)
SQL で 割り算(除算) を行う際、分母が 0 になると 0除算エラー が発生します。 特に、 集計結果 売上 ÷ 件数 比率・平均値計算 などでは、実務で頻繁に遭遇するトラブルです。 この記事では、NULLIF を使って安全に0除算を回避する方法 を中心に解説し... -
SQL
SQL TO_CHAR で日時を文字列に変換する方法|フォーマット一覧付き
SQLで日付や日時を扱っていると、「YYYYMMDD形式で出したい」「時刻付きで表示したい」といった場面は頻繁にあります。 そんなときに使うのが TO_CHAR 関数 です。 この記事では、 TO_CHARの基本的な使い方 日時を文字列に変換する代表的なフォーマット よ... -
SQL
SQL:複数行の値を1行にまとめたい時に使う関数(LISTAGG / STRING_AGG)
SQLを使っていると、次のように複数行の値をカンマ区切りで1つにまとめたい場面があります。 🔹例:従業員テーブル これを次のように集約したい👇 こういった「行→1セルまとめ」が必要な時に便利なのが、 👉 LISTAGG👉 STRING_AGG の2つです。データベース... -
SQL
SQL 日付条件で絞り込みたい時の書き方(BETWEEN/>=/<=)
SQLで日付条件を使ってデータを抽出したい場合、代表的な書き方として BETWEEN や >= / <=(範囲指定) を利用します。しかし、実務では 時間を含むデータ や 境界値の違い により、意図したデータが取得できないケースが発生しやすいです。 この記... -
SQL
HAVING句 WHERE句 違い|SQLで使い分けるべき場面をわかりやすく解説
SQLで集計処理を行う際に必ず出てくるのが WHERE句 と HAVING句 の違いです。どちらも「条件を絞り込む」ための構文ですが、役割が明確に異なります。この記事では、 HAVING句を使うべきケース と WHEREとの使い分け をわかりやすく解説します。 ■ WHERE句... -
SQL
📝 SQL: LIKE 検索におけるワイルドカード(%と_)の動作と注意点
SQLのLIKE演算子は、特定の文字列パターンに一致するデータを検索する際に使用されます。この検索パターンを指定するために、ワイルドカードと呼ばれる特別な記号が使われます。主なワイルドカードは、%(パーセント)と_(アンダースコア)の2種類です。 ...
