postgresql 关于使用between and 中是字符串的问题

2021-01-07 09:24发布

问题:

数据库是:postgresql
想要进行查询,基于表格d_icd_diagnoses。
其中表格中有一列是,icd9_code ,类型是 character varying(n),固定最大长度的可变字符串。
sql语句是:

select *
from d_icd_diagnoses
where icd9_code between '7463 ' and '7466 '

请注意:'7463 '后面还有一个空格字符串的位置。
我想问下,'7463 '和' 7463'有区别吗?是不是'7463 '查询的范围是'7463' ,'74630'-'74639'?
这样用between的原理是什么呢?求解释。

回答1:

关注下。
一般字符串比较大小是先比较第一位,在比较第二位,依次往后。
就上面的情况取值 范围 是 '7463' 到 ‘7466’ 你后面 有没有空格其实是不太受影响的