大家好。
假设我有一个包含字符串的数组,这些字符串是我需要从数据库中提取的行的值。 假设数组是:
searchStringArray = {'qwe', 'rty', 'asd',' fgh', 'zxc'}我可以用一种非常简单的方式在查询中构建 WHERE 语句:
"WHERE
t1.column1 IN (' " || Concat Items(searchStringsArray, " ', ' ")|| " ' )"解析时会给我以下字符串:
"WHERE
t1.column1 IN('qwe', 'rty', 'asd', 'fgh', 'zxc')"但是如果我的 searchStringArray 不是完整字符串而是部分字符串怎么办?
我需要简化我的脚本。 目前我有一个包含多个 Contains 语句的查询,在 SQL 中如下所示:
"WHERE<BR />(t1.column1 LIKE '%qwe%') OR
(t1.column1 LIKE '%rty%') OR
(t1.column1 LIKE '%asd%') OR
(t1.column1 LIKE '%fgh%') OR
(t1.column1 LIKE '%zxc%')"
从字符串数组构造起来非常麻烦。 我想知道是否可以编写一个等效的 WHERE 语句,如下所示:
"WHERE
t1.column1 IN ('%qwe%', '%rty%', '%asd%', '%fgh%', '%zxc%')"或类似的东西:
"WHERE
t1.column1 MATCH('%qwe%' OR '%rty%' OR '%asd%' OR '%fgh%' OR '%zxc%')"或者类似的东西,使用它更容易构建连接项目() 。 我尝试了上面的两个例子,虽然它们似乎是有效的 SQLite 语法,但它们在 JSL 中不起作用。 有什么建议么?
谢谢,
中号