小编Jos*_*uis的帖子

向 Postgres 数据库添加新的排序规则

我有这些整理:

postgres=# select * from pg_collat​​ion;
  姓名 | collnamespace | 领主| collencoding | 整理 | 类型  
------------+--------------+-----------+--------- -----+-------------+------------
 默认 | 11 | 10 | -1 | |
 C | 11 | 10 | -1 | C | C
 POSIX | 11 | 10 | -1 | POSIX | POSIX
 zh_CN | 11 | 10 | 6 | en_US.utf8 | en_US.utf8
 en_US.utf8 | 11 | 10 | 6 | en_US.utf8 | en_US.utf8
 ucs_basic | 11 | 10 | 6 | C …

postgresql collation localization

6
推荐指数
1
解决办法
2万
查看次数

未使用数据类型 citext 的列上的索引

在 PostgreSQL 9.4 中,具有以下架构:

CREATE TABLE people (
    id INTEGER PRIMARY KEY,
    name TEXT,
    junk CHAR(1000)
);

INSERT INTO people(id, name)
 SELECT generate_series(1,100000), md5(random()::text);

CREATE INDEX ON people (name text_pattern_ops);
Run Code Online (Sandbox Code Playgroud)

如果我按名称搜索,则使用索引:

test=# explain analyze select id, name from people where name like 'a%';
                                                           QUERY PLAN                                                           
--------------------------------------------------------------------------------------------------------------------------------
 Bitmap Heap Scan on people  (cost=248.59..1160.92 rows=6061 width=37) (actual time=2.412..8.340 rows=6271 loops=1)
   Filter: (name ~~ 'a%'::text)
   Heap Blocks: exact=834
   ->  Bitmap Index Scan on people_name_idx  (cost=0.00..247.08 rows=6266 width=0) (actual time=2.123..2.123 rows=6271 loops=1)
         Index Cond: …
Run Code Online (Sandbox Code Playgroud)

postgresql index pattern-matching case-sensitive

3
推荐指数
1
解决办法
3868
查看次数