gpt4 book ai didi

PostgreSQL 喜欢不返回匹配的实例

转载 作者:行者123 更新时间:2023-11-29 12:14:28 25 4
gpt4 key购买 nike

PostrgeSQL like 函数是如何工作的?我正在使用 token 输入来限制用户仅使用现有值的输入。

我在数据库中有以下值:

  `Yellow, White, Orange...`

我的代码

 @colors = Color.where("name like ?", "%#{params[:q]}%")

如果我输入 w 例如 White 是不建议的。我必须输入第二个字母才能看到怀特提议。因为 Db 值都以大写字母开头,所以我怀疑与 SQLite 有所不同。

我找到了这个 post其中提到了 ILIKE 但想知道是否有一些通用代码可以同时用于 Postgres 和 SQLite。

最佳答案

SQLite LIKE 运算符默认不区分大小写。
在 PostgreSQL 中,ILIKELIKE 的不区分大小写的版本。还有运算符:

~~   .. LIKE
~~* .. ILIKE
!~~ .. NOT LIKE
!~~* .. NOT ILIKE

这三个表达式在 PostgreSQL 中实际上是相同的:

name ilike '%w%'
name ~~* '%w%'
lower(name) like lower('%w%')

最后一行大部分都适用 SQLitePostgreSQL .我添加了指向相应手册页的链接。

有一个限制:SQLite 只理解 ASCII 字符的小写/大写,而 PostgreSQL 也理解其他 UTF-8 字符。

关于PostgreSQL 喜欢不返回匹配的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8218086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com