Ada*_*tan 10 postgresql indexing date
请考虑下表:
Column | Type |
--------------------+--------------------------+
id | bigint |
creation_time | timestamp with time zone |
...
Run Code Online (Sandbox Code Playgroud)
像下面这样的查询(更不用说更复杂的JOIN)需要相当长的时间,因为它们需要为每个项计算creation_time :: DATE:
SELECT creation_time::DATE, COUNT(*) FROM items GROUP BY 1;
Run Code Online (Sandbox Code Playgroud)
如何在时间戳的那一天创建索引 - creation_time::DATE?
我试过了:
CREATE INDEX items_day_of_creation_idx ON items (creation_time)::date;CREATE INDEX items_day_of_creation_idx ON items (creation_time::date);但都失败了:
ERROR: syntax error at or near "::"
Run Code Online (Sandbox Code Playgroud)
a_h*_*ame 10
在表达式上创建索引时,必须在括号之间放置表达式(除了围绕列/表达式列表的括号外:
CREATE INDEX items_day_of_creation_idx ON items ( (creation_time::date) );
Run Code Online (Sandbox Code Playgroud)