小编典典

SQLite为什么说instr不存在?

sql

我正在尝试运行查询:

SELECT name
FROM Foo 
WHERE instr(name, '@') = 0 AND instr(name, '.') != 0    

但是我得到了错误:“没有这样的功能:instr”。这使我感到困惑,因为该网站明确指出了该功能的存在。有人知道发生了什么吗?

附言:我也尝试在SQLiteSpy中查询,该查询给出了相同的错误。


阅读 168

收藏
2021-03-23

共1个答案

小编典典

根据“更改历史记录”,此instr功能已在3.7.15版中添加:

2012-12-12(3.7.15)

添加了instr()SQL函数。

确保您正在运行最新版本。

如果无法升级,则还可以使用LIKE运算符:

SELECT name
FROM Foo 
WHERE name NOT LIKE '%@%' -- name does NOT contain @
AND name LIKE '%.%';      -- name DOES contain .
2021-03-23