有没有办法匹配查询,例如,我想通过查询根据规则(表名)搜索我的号码。我想匹配以规则开头的数字.........1)3322323"333"这是我的查询SELECT * FROM demo where rules like '33322323'; 我希望上面的查询返回 true。因为它与我的规则相匹配。下面是我的表格。 id | rules............... 1 | 333 2 | 22 3 | 442我有样本数据 1) 33331235, 2) 2354545 3) 4424545454 4) 22343434案例1(匹配数据1)33331235)假设我想用我的规则表检查我的33331235,以便我的样本数据与我的第1行是333,因为我的数据以333开头.....它应该返回 true,因为它匹配。案例 2(匹配数据 2)2354545)假设我想用我的规则表检查我的2354545,这样我的样本数据就与我的不匹配任何行,因为我没有规则适用于它.....它应该返回 true,因为它匹配。案例3(匹配数据1)4424545454)假设我想用我的规则表检查我的4424545454,以便我的样本数据与我的行 1 是 442,因为我的数据以 442 开头.....它应该返回 true,因为它匹配。解决。我在Forpas的帮助下解决了这个问题,我用这个查询来匹配数字开头SELECT * FROM demo where '333434334 like rules ||'%';使用此查询时字符串末尾的数字。SELECT * FROM demo where '333434334' like '%' || rules;字符串中任意位置的数字,然后我使用此查询。SELECT * FROM demo where '333434334' like '%' || rules ||'%';
1 回答
烙印99
TA贡献1829条经验 获得超13个赞
您需要使用运算符 。
您已经使用MySQL和SQLite标记了您的问题。
对于 MySQL:LIKE
SELECT * FROM demo where '33322323' like concat(rules, '%');
对于 SQLite:
SELECT * FROM demo where '33322323' like rules || '%';
上面的代码将返回列值是 的起始字符的所有行。rules
33322323
添加回答
举报
0/150
提交
取消