~ SQLITE 中的运算符

~ operator in SQLITE

我在 Postgres 上 运行查询这部分,运行没问题

where column ~ '^[0-9]'

但是当我尝试在 SQLite 中 运行 它时,我得到这个错误:

near "~": syntax error

你知道我如何在 SQLite 中运行这个函数吗?

实际上,如果您想要以数字开头的列,您可以简单地使用:

where substr(column, 1, 1) between '0' and '9'

SQLite 本身不支持正则表达式——尽管它很容易扩展。它确实支持 Unix 通配符,但在这种情况下,您可以使用内置函数。

SQLite 支持 GLOB 运算符:

WHERE column GLOB '[0-9]*'

[0-9] 表示该值以数字开头,* 表示可以跟在任何字符之后。