【AppSheet】SELECT関数の基本について
SELECT関数とは
SELECT関数は、AppSheetで特定の条件に合致するデータを抽出するための非常に強力な関数です。基本的な構文は以下の通りです。
SELECT(テーブル名[列名], 条件式, [重複の有無])
引数の意味は次のとおりです。
テーブル名[列名]: データを抽出する元のテーブルと列を指定します。
条件式: どのデータを抽出するかを決定する条件を指定します。
重複の有無: オプションの引数で、重複を許可するかどうかを指定します。
SELECT関数の使用例
基本的な使用例:
SELECT(生徒[ファースト ネーム], TRUE, FALSE)
これは、生徒テーブルからすべての生徒のファーストネームを取得します(重複あり)。
条件付きの使用例:
SELECT(生徒[ファースト ネーム], ([クラス年度] = "2020"), FALSE)
これは、2020年度クラスの生徒のファーストネームのリストを返します。
動的フィルタリングの例:
SELECT(注文[注文 ID], ([顧客] = [_THISROW].[顧客]))
これは、現在の行の顧客に対応する注文IDを返します。
SELECT関数の特徴
リスト形式の結果: SELECT関数は、条件に合致する値をリスト(配列)形式で返します。
動的フィルタリング: [_THISROW]を使用することで、現在の行の値に基づいて動的にデータをフィルタリングできます。
重複の制御: 第3引数をTRUEに設定すると、重複する値を除外できます。
例1: 生徒データの抽出
生徒テーブルがあると仮定し、以下のようなデータがあるとします。
ID名前クラス年度1田中A組20242佐藤B組20243鈴木A組20234高橋C組2024
このデータに対して、2024年度の生徒の名前を抽出する場合。
SELECT(生徒[名前], [年度] = 2024)
結果:{“田中”, “佐藤”, “高橋”}
例2: 注文データの抽出
注文テーブルがあると仮定し、以下のようなデータがあるとします。
注文ID顧客名商品金額001山田りんご1000002鈴木バナナ800003山田みかん1200004佐藤りんご1000
特定の顧客(例:山田さん)の注文IDを抽出する場合。
SELECT(注文[注文ID], [顧客名] = "山田")
結果:{“001”, “003”}
例3: 商品データの抽出
商品テーブルがあると仮定し、以下のようなデータがあるとします。
商品ID商品名カテゴリ価格P001りんご果物100P002バナナ果物80P003トマト野菜150P004キュウリ野菜120
100円以上の商品名を重複なしで抽出する場合。
SELECT(商品[商品名], [価格] >= 100, TRUE)
結果:{“りんご”, “トマト”, “キュウリ”}
これらの例を参考に、実際のアプリケーションでSELECT関数を活用することができます。
データの構造や抽出条件に応じて、適切に関数を使用することで、必要なデータを効率的に取得できます。