我无法从pgsql 9.1
中包含BOX类型列的表中进行选择create table test (t box);
CREATE TABLE
select * from test order by t;
ERROR: could not identify an ordering operator for type box
LINE 1: select * from test order by t;
^
TIP: Use an explicit ordering operator or modify the query.
我发现有一类操作符(box_ops)应该处理排序和相等,甚至尝试为列创建一个显式索引。
create index testx on test using gist (t box_ops);
CREATE INDEX
但问题仍然存在。我错过了什么? 谢谢!
答案 0 :(得分:1)
您必须明确指定运算符。例如:
SELECT * FROM test ORDER BY t USING &<
您必须决定实际需要的顺序,并选择相应的比较运算符。
box_ops
中定义的运算符位于http://www.leadum.com/downloads/dbscribe/samples/postgresql/web_modern/opclass/main/1325676015.html
另请参阅:http://www.postgresql.org/docs/current/interactive/functions-geometry.html