在Postgre的HEX where子句

时间:2011-08-07 05:00:54

标签: postgresql

我是postgreSQL的新手

如何做到这一点

select * from table_abc where table_abc.a>=7a and table_abc.b<=7a

列a,b和输入值

中的所有值都是HEX

由于

编辑:

table_abc

a bytea
b bytea
c text

1 个答案:

答案 0 :(得分:1)

小心,这里。在Postgres中,bytea字节数组。您似乎希望在这些列中存储单个字节。

我在http://www.postgresql.org/docs/9.0/static/datatype.html的数据类型列表中看不到单字节类型。

您可以使用整数类型。例如,当我这样说时:

select x'7A'::integer

我得到122。

如果您打算在这些列中存储单个字节并使用十六进制值编写查询,那么我建议您使列成为整数并进行如下查询:

select * from table_abc where table_abc.a>=x'7a'::integer and table_abc.b<=x'7a'::integer