如何使用 buildQuery query 查询 productState!='a' and productState!='b'



我想通过产品的ipNum(即已存在(和productState查询不等于"REVOKE"且不等于"SOLD"的产品。当我只查询时

productState != 'REVOKE'

它确实有效,但当我查询时

productState != 'REVOKE' and != 'SOLD'

不起作用

  1. 参考ipNum-该字段(根据Rocketchathttps://chat.hyperledger.org/channel/composer?msg=naiTMBZdaikSs4Qps(,不是Product资产的字段-所以你的问题可能是intellectualProperty.ipNum比较-你不能在关系查询中使用"阶梯引用"(在另一个资产类中(-例如,建议在查询处理器函数中使用不同的方式进行交叉检查,或者在调用查询检查Product字段之前,在代码中使用与inputValue的if比较

  2. 双NOTs的AND(即正在评估的同一字段值(在[underly]couchDB查询语言(返回all(中似乎不起作用,因为它是同一字段。例如

    const q = buildQuery("SELECT org.xfb.ipchain.Product WHERE ( (productState != 
    'REVOKE') AND (productState != 'SOLD') )");
    const results = await query(q);
    console.log("results are " + results); // returns all status
    results.forEach(function(res){
    console.log("result instance is " + res.id + " " + res.status);
    });
    

您可能需要重新考虑您的状态查询设计。

相关内容

  • 没有找到相关文章

最新更新