SQL の改善

Snowflakeでは、クエリをより簡単に記述できるような機能強化を継続的に行っています。これらの新しいキーワードや関数を使えば、よりシンプルで短い SELECT ステートメントを記述できます。

2024年の SQL 改善

2024年には以下の SQL の改善が導入されました。

リリース日

改善

影響

2024年10月

ステージ上のファイルで最大128 MB までのオブジェクトをクエリする ためのサポート。

列に格納する前に、オブジェクトのサイズをより簡単に縮小できます。16 MB を超えるオブジェクトを列に格納することはできないことに注意してください。

2024年10月

REDUCE 関数で拡張した 高次関数 のサポート。

ラムダ式を使って半構造化データや構造化データを削減し、簡潔で読みやすく、効率的な方法でデータ操作や高度な分析を実行できます。

2024年9月

表形式データを返す ストアドプロシージャからの選択 のサポート。

結果をテーブルに保存する SQL ステートメントを簡略化できます。たとえば、 RESULT_SCAN 関数で SQLID Snowflake Scripting変数を使用してクエリ結果を含むテーブルを作成するのではなく、結果から直接選択するクエリを使用することができます。

2024年9月

RANGE BETWEEN ウィンドウフレームに明示的なオフセット (n PRECEDING および n FOLLOWING)を持つ、 FIRST_VALUE および LAST_VALUE ウィンドウ関数が含まれるように拡張されたプレビューサポート。

時系列データセットにおいて、予期される、あるいは予期されない記録欠落によってギャップが発生した場合に、追加関数を使用して移動集計を実行することができます。

2024年8月

SEARCH 関数および SEARCH_IP 関数を使用した 全文検索 のプレビューサポート。

VARIANT、 OBJECT、 ARRAY 列のフィールドを含む、1つまたは複数のテーブルから、指定した列の文字データ(テキスト)と IPv4 アドレスを検索できます。

2024年8月

関数呼び出し および オブジェクト定数 における SELECT リストまたは GROUP BY 句でのフィルタリングのための、 ILIKE および EXCLUDE キーワードの使用のサポート。

関数コールやオブジェクト定数では、パターンにマッチする列をフィルターしたり、特定の列を除外したりすることができます。

2024年7月

SELECT リストまたは GROUP BY 句でのフィルタリングのために、 OBJECT 定数 におけるワイルドカード指定のサポート。

属性名をキーとし、関連する値を値として、指定されたデータから OBJECT 値を構築できます。

2024年6月

RANGE BETWEEN ウィンドウフレームに明示的なオフセット (n PRECEDING および n FOLLOWING)を持つ、 AVGCOUNTMINMAX、および SUM ウィンドウ関数が含まれるプレビューサポート。

時系列データセットにおいて、予期される、あるいは予期されない記録欠落によってギャップが発生した場合に、移動集計をより簡単に実行することができます。

2024年5月

UNPIVOT サブ句で { INCLUDE | EXCLUDE } NULLS オプションを使用して、結果に NULL 値のある行を含めるためのサポート。

SQL ステートメントで UNPIVOT サブ句を使用すると、より柔軟性が増します。

2024年5月

CREATE OR ALTER TABLE および CREATE OR ALTER TASK のサポートのプレビュー。

CREATE コマンドと ALTER コマンドの機能は、組み合わせることができます。

2024年5月

テーブル、ビュー、セキュアビュー、クエリへの参照を取得しFROM 句でクラス内のメソッドを呼び出す TABLE キーワードの使用がサポートされました。

TABLE キーワードを使えば、よりシンプルな SQL ステートメントを記述できます。

2024年5月

新しい ASOF JOIN 構文。

よりシンプルな SQL ステートメントを記述して、 時系列データ を含むテーブルを結合することができます。

2024年5月

ANY キーワードまたは PIVOT 構文によるサブクエリの指定がサポートされました。

すべての異なる値、またはサブクエリによって返されるすべての値で簡単にピボットできます。

2024年5月

FILTER および TRANSFORM 高次関数 のサポート。

ラムダ式を使用すると、半構造化データや構造化データをフィルターしたり変換したりすることができるようになり、データ操作や高度な分析を実行するための簡潔で読みやすく、効率的な方法が得られます。

2024年3月

新しい GREATEST_IGNORE_NULLS および LEAST_IGNORE_NULLS 関数。

式のリストから、最小と最大の非 NULL 値を返すことができます。

2024年3月

SELECT リストで後続カンマがサポートされました。

SELECT リストの最後の列を削除または移動する場合、直前のカンマを削除する必要はありません。

2024年2月

upperlowertrim 照合追加の SQL 関数で がサポートされました。

照合を変更しなくても、 upperlowertrim 照合を使用する文字列をこれらの関数に渡すことができます。

2023年の SQL 改善

2023年には以下の SQL の改善が導入されました。

リリース日

改善

影響

2023年8月

新しい ARRAY_MINARRAY_MAXARRAY_SORT 関数。

最小値と最大値を持つ配列要素を簡単に選択できるようになりました。

要素のソートされた配列を簡単に取得できます。

2023年8月

SELECT コマンドの新しい ILIKE および REPLACE パラメーター。

SQL ワイルドカードを含むパターンにマッチするすべての列を選択できるようになりました。

すべての列を選択する場合、特定の列の値を式で置き換えることができます。

2023年7月

GROUP BY 構文の新しい ALL キーワード。

各列を名前で指定しなくても、 SELECT リスト内のすべての非集計列で結果をグループ化できます。

2023年2月

ROUND 関数で銀行型丸め(端数が0.5のときに偶数に丸める)がサポートされました。

値の丸める際に銀行型丸めを使用できるようになりました。

2023年1月

新しい MIN_BY および MAX_BY 関数。

ある列の最小値または最大値を含む行を見つけ、その値を別の列から取得することができます。

2022年の SQL 改善

2022年には以下の SQL の改善が導入されました。

リリース日

改善

影響

2022年11月

SELECT コマンドの新しい EXCLUDE および RENAME パラメーター。

すべての列を選択し、特定の列を除外したり、列名を変更したりすることができます。

2022年11月

新しい ARRAY_EXCEPT および ARRAY_DISTINCT 関数。

ある配列にあって別の配列にない要素を、簡単に選択できるようになりました。

配列の異なる要素を簡単に取得できます。

2022年5月

新しい REGEXP_SUBSTR_ALL 関数。

文字列から正規表現にマッチする部分文字列を簡単に抽出できるようになりました。