SQL

SQL

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

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

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

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

【SQL】ARRAY_AGG関数の使い方

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

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

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