SQL

SQL

【SQL】DISTINCTの使い方 重複排除

SQL(Structured Query Language)は、データベース管理システムにおいてデータを操作するための標準言語です。 その中でも、DISTINCTキーワードは、重複するレコードを排除して一意のレコードを取得するために使用され...
SQL

便利!SQLのウインドウ関数について

SQLのウインドウ関数(Window Function)は、行の集合に対して計算を行い、結果を同じ集合の各行に返す関数です。 これは集約関数に似ていますが、集約関数がグループ全体の結果を一つの行に対して返すのに対し、ウインドウ関数は各行ごと...
SQL

データベースの正規化とその重要性

データベースの正規化は、データベースの冗長性を減らし、データの整合性を保つためのプロセスです。 正規化にはいくつかの段階(正規形)がありますが、それぞれの段階で特定のルールに従ってテーブル構造を設計します。 以下に、主な正規形とそのSQLを...
SQL

習得必須!SQLの結合(JOIN)の種類と使用例

SQLの結合(JOIN)は、異なるテーブルのデータを組み合わせるために非常に重要な機能です。 本記事では、結合の種類とそれぞれの使用例について詳しく説明します。 サンプルデータ 使用するサンプルデータは以下のとおりです。 customers...
SQL

【SQL】ARRAY_AGG関数の使い方

Snowflakeなどで利用できるARRAY_AGG関数の使い方をご紹介します。 はじめに SQLのARRAY_AGG関数は、複数の行からの値を一つの配列にまとめる集計関数です。 データの集約やカスタムリストの作成に非常に便利です。 ARR...
SQL

【SQL】PIVOT・UNPIVOT関数について分かりやすく解説!

SQLのPIVOTとUNPIVOTは、データの表示方法を変換するための関数です。 PIVOTを使用すると、行データを列に変換し、UNPIVOTを使用すると列データを行に変換できます。 エクセルのピボットテーブルのような操作ができるイメージで...
SQL

【SQL】OVER句?ウィンドウ関数による順位付け

SQLのウィンドウ関数は、クエリの結果セット内の行に対して計算を行うための関数で、データの分析や集計が効率的に行えます。 ウィンドウ関数は、以下の形式で使用されます。 <ウィンドウ関数> OVER ( [PARTITION BY <列名>]...
SQL

便利!SQLのWITH句の使い方

SQLのWITH句は、共通テーブル式(Common Table Expressions, CTE)と呼ばれ、一時的な結果セットを名前付きで定義するための構文です。 途中の集計結果を一時テーブルに入れておくようなイメージです。 CTEは、クエ...
SQL

【Snowflake】テーブル定義変更(列削除)

Snowflakeの既存テーブルの列削除(定義変更)が必要になり、SQL文に分からなくなったら最近はChatGPTやCopilotに聞いています。 以下のSQLが出てきたのですが、エラーになりました。 ALTER TABLE your_ta...
SQL

【Snowflake】ユニークなIDを生成するUUID_STRING関数

複数テーブルにまたがってユニークなIDを生成したい場面があると思います。 そのような時には、UUIDを使用するのが便利です。 UUIDとは UUID(ユニバーサルユニーク識別子)は、標準化された128ビットの識別子であり、世界中のほぼ全ての...