簡體   English   中英

如何使PostgreSQL不區分大小寫?

[英]How to make PostgreSQL case insensitive?

如何使PostgreSQL搜索( WHERE field = 'stackoverflow' )不區分大小寫?

由於效率較低,我不想因為ORM和CITEXT而使用LOWER() 我發現解決方案是使用另一種排序規則:

CREATE DATABASE polish_database  LC_COLLATE 'pl_PL.UTF-8' LC_CTYPE
'pl_PL.UTF-8';

但是如何將不區分大小寫的排序/語言環境下載到Ubuntu?

不確定這是否有幫助。

但是你不需要為整個數據庫使用整理。

你可以將整理歸結到你擔心它的領域。

CREATE TABLE test1c (
    id integer,
    content varchar COLLATE "x"
);

您還可以創建索引以支持整理或計算值

CREATE INDEX test1c_content_y_index ON test1c (content COLLATE "y");

要么

CREATE INDEX test1c_content_y_index ON test1c (LOWER(content));

然后你可以做lower()並使用索引。

WHERE field = Lower('StackoverFlow') 

我認為可以使用關鍵字ILIKE

select 'test' ILIKE 'TEST'; // return true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM