如何获取WHERE列小于变量的行?

时间:2018-10-23 11:30:40

标签: php mysql pdo

例如,我试图收集小于'80000'的数据

SELECT * FROM `apartments` WHERE `building_num`='1' AND `price` < '800000' ORDER by `apartment_num` ASC

在响应打印价格:

  

1249661,790537,1266228,1267359,1177575

它显示的结果大于80万,而我做的却少。

有人有主意吗?

1 个答案:

答案 0 :(得分:2)

为什么要比较字符串?

 SELECT * FROM `apartments`
 WHERE `building_num`='1' AND `price` < 800000 
 ORDER by `apartment_num` ASC

除非它是一个char列,然后是另一个问题。

得到此结果的原因是,通过ASCII enconding(在比较字符串时使用),由于第一个字符,“ 11”小于“ 2”。