我想选择居住在加利福尼亚邮政编码中的人。但是,我使用的这张表将邮政编码存储为字符串,而不是整数,因此我喜欢在它周围放一个Qutoe。
我如何在范围内选择这些值,而不必键入它们?
我想做这样的事情:select people from tablename where postal_code >= '90001' and postal_code <= '96162'
谢谢!
最佳答案
虽然您的查询可能会在此特定时间间隔内工作,但最好使用cast
将字符串转换为整数以进行正确的数值比较:
select people
from tablename
where cast(postal_code as int) between 90001 and 96162
字符串和数字比较不遵循相同的规则,并且通过比较字符串最终会得到意外的结果。例如,按字符串,
'9'
大于'10'
。
关于sql - 选择以字符串形式存储在字符串中的邮政编码(配置单元),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59256438/