PowerQueryのList関数を公式ドキュメントで調べるとよく出てくる引数があります。
equationCriteria
これ関数の公式ドキュメントをさんざん探しましたが、説明がないです。
ほんと困るのですね。説明しないならこんな引数を定義しないでほしいです。この名前からMコーダーはいろいろ期待を持ってしまうのですね。
わたしの場合は、以下の関数をよく使います。リストの要素に指定の値と一致するものがあるかどうかを調べる関数です。これ値と要素は完全一致なのでこれに多少の揺れを含めて判定できないかと期待を持ったわけです
List.Contains(list as list, value as any, optional equationCriteria as any) as logical
それでサポートに尋ねました。紹介してくれたのはブログでした。やはりMSの公式ドキュメントは無いようです。
Chris Webb's BI Blog
https://blog.crossjoin.co.uk/2017/01/22/the-list-m-functions-and-the-equationcriteria-argument/
このブログを読むと、equationCriteriaには以下のような2値の比較関数を設定することができるようです。したがって要素の部分一致もこれで可能になります。
Comparer関数を使う
Comparer.FromCulture(Culture.Current, true )
カルチャー設定に基づく比較を行う。単数形と複数形を同じと見るかなど
Comparer.Ordinal()
文字を順番に比較して判定する。通常の比較。
比較のためのカスタム関数を使う
(x as text, y as text)=>Text.Start(x,3)=y 最初の3文字の比較
(x as text、y as text)=> Text.Contains(y、x)) 部分一致
レコードが要素のリストの比較
each [フィールド名] 各レコードの比較するフィールド名を指定する
0 件のコメント:
コメントを投稿