Rails + PostgreSQL - 使用 Like

4

我有以下两个查询:

SELECT users.* FROM "users" WHERE (fname || lname LIKE '%james%')

SELECT users.* FROM "users" WHERE (fname || lname LIKE '%James%')

我在用户表中有一个fname为James的记录。

我遇到的问题是第一个查询返回0个结果,而第二个查询返回正确的结果。

我希望LIKE不区分大小写。有什么好的想法吗?谢谢。

3个回答

6

SELECT users.* FROM "users" WHERE (fname || lname ILIKE '%james%')

ILIKE表示不区分大小写的LIKE。请注意,这仅适用于PostgreSQL,而不是SQL标准。


谢谢大家。我给出了这个答案,因为它有解释。 - AnApprentice

3
尝试使用

标签


  SELECT users.* FROM "users" WHERE (fname || lname ILIKE '%james%')

注意在 LIKE 中的 'I'。

0

使用“LIKE”或“ILIKE”查询对于条目较多的表格来说速度相当慢。如果您使用PostgreSQL的全文搜索功能,速度会更快。

PostgreSQL全文搜索文档


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接