代码之家  ›  专栏  ›  技术社区  ›  Hüseyin BABAL

MySQL双值校验问题

  •  0
  • Hüseyin BABAL  · 技术社区  · 16 年前

    我想做一个只获取“cost”值大于零的行的查询。cost列有双数据类型。当我编写这样的查询时,

    select cost from xxx where cost>0;
    

    它只检索值分级器大于或等于1的行。例如,它不取0.02或0.3这样的值。查询将这些类型值视为0。如何实现我的目标? 谢谢你的提前…

    1 回复  |  直到 16 年前
        1
  •  1
  •   tpdi    16 年前

    我不能用MySQL5.41复制你的问题。

    向我们展示 describe table xxx ;

    如果发出查询,会发生什么情况:

    select cost from xxx where cost > 0.0;
    

    您的查询实际上是:

     select ceil(cost) from xxx where cost > 0.0;
    

    如果是这样,对于cost>0但<=1的值,您将得到结果集1。

    推荐文章