2

我正在尝试连接到房地产交易标准 (RETS) 服务器以提取值Matrix_Unique_Id列表中的列表bigint

我的 DMQL 查询 IN 子句看起来像这样

(Matrix_Unique_Id=|123456789456,845686745,845156413,8654543354)

但是,这给了我以下错误

DMQL:字段“Matrix_Unique_ID”字符串的 BigInt 条件无效

如果我使用相同的语法来搜索列表中的字符串,例如它可以正常工作

(Status=|Active,Pending,Expired)

如何在长长的值列表中搜索 Matrix_Unique_Id 的列表?

4

2 回答 2

1

结果证明 IN 语法仅适用于字符串类型。

为了得到bigint工作,我不得不做以下讨厌的语法

(Matrix_Unique_Id=123456789456)|(Matrix_Unique_Id=845686745)|(Matrix_Unique_Id=845156413)|(Matrix_Unique_Id=8654543354)

以上给了我预期的结果。但是,由于这使得请求 URI 更长,我不得不提交多个请求以避免 HTTP 错误代码404414.

于 2019-05-12T21:21:52.813 回答
1

普通字段的 DMQL 查询 IN 子句和 RETS 服务器中的查找字段之间存在差异。

在您的第一个示例中,您使用管道符号“|”给出了查询 . 但随后它将适用于“状态”、“城市”、“县”等查找值。

您应该像这样尝试 Matrix_Unique_Id(normal field),

(Matrix_Unique_Id=123456789456,845686745,845156413,8654543354)

您写的答案也是正确的,但它冗长且仅对查询中的多个字段有用。

注意:查询时 bigint 或 string 没有区别。

于 2019-05-14T07:30:52.897 回答