Microsoft Dataverse では、ユーザーはSDK for .NETを使用して、 FetchXML、Web API、または QueryExpression を使用して、次の条件演算子の列比較を実行できます。
FetchXml | Web API | ConditionOperator |
---|---|---|
eq |
eq |
Equal |
ne |
ne |
NotEqual |
gt |
gt |
GreaterThan |
ge |
ge |
GreaterEqual |
lt |
lt |
LessThan |
le |
le |
LessEqual |
この操作により、ある列を特定の値と比較して、検出されたレコードをすべて返したり、2つの列を比較して、一致する値を持つレコードをすべて返したりすることができます。
制限
Dataverse 列比較には、次の制限事項があります:
Web API と QueryExpression を使用すると、単一テーブル内の列のみを比較できます。
FetchXml を使用すると、他の関連テーブルの列を比較できます。 テーブル間の比較 を参照してください。
同時に比較できるのは 2 つの列だけです。
複数値条件演算子 (つまり: in) には対応していません。
拡張条件演算子 (つまり: "creditlimit > spends+1000") には対応していません。
互換性のない列比較はサポートされていません。 たとえば、「int 対 int」の列は有効な比較ですが、「int 対 string」 の列は有効な比較ではありません。
列の比較 FetchXML
次の例は、を使用して列を比較する方法を示しています FetchXML。
<fetch>
<entity name='contact' >
<attribute name='firstname' />
<filter>
<condition attribute='firstname' operator='eq' valueof='lastname'/>
</filter>
</entity>
</fetch>
FetchXML の場合、条件要素の valueof
属性は、選択した列と比較する列の名前を指定します。 前の例では、firstname
列と lastname
列が比較され、両方の列に同じ値を含むレコードが返されます。
テーブル間の比較
FetchXML のみの場合、関連テーブルのフィールド値のみを比較できます。 次の例では、contact fullname
列が account name
列と一致する行を返します。
<fetch>
<entity name='contact'>
<attribute name='contactid' />
<attribute name='fullname' />
<filter type='and'>
<condition attribute='fullname' operator='eq' valueof='acct.name' />
</filter>
<link-entity name='account' from='accountid' to='parentcustomerid' link-type='outer' alias='acct'>
<attribute name='name' />
</link-entity>
</entity>
</fetch>
link-entity
要素は alias
属性を使用する必要があり、valueof
パラメータの値はそのエイリアスと関連テーブル内の列名を参照する必要があります。
関連情報
Web API を使用した列の比較
SDK を使用した列の比較
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。