我正在尝试使用 App Inventor 2 中的GetRowsWithConditions
方法从表中获取一些行。我使用了AND
并且它正常工作但是当我使用OR
时,我得到了400 Bad Request Invalid query: Parse error near 'OR'
。
条件是
WHERE ROWID=1 OR ROWID=1001 OR ROWID=2001
答案 0 :(得分:1)
OR
,另请参阅SQL Reference Documentation of the Fusion Tables API。
答案 1 :(得分:1)
正如Taifun所说,Fusion Tables不支持“OR”,但另一个suggested by Google是使用“IN”。
<强> Wikipedia Entry: 强>
IN
会在一组候选人中找到任何值。
SELECT ename WHERE ename IN ('value1', 'value2', ...)
如果谓词的值是候选值集之一,则所有行都与谓词匹配。这与
的行为相同SELECT ename WHERE ename='value1' OR ename='value2'
除了后者可以允许比较几个列,每个IN子句都没有。对于更多的候选人,IN
不那么冗长。
因此在理论上*,您的查询将重新格式化为:
... WHERE ROWID IN ('1','1001','2001')
希望有所帮助!
*我在理论上说,因为我从未使用过ROWID作为过滤器,因为我总是创建一个自定义ID列。