算术函数中的mysql单引号

时间:2015-09-30 22:06:52

标签: mysql database math quote arithmetic-expressions

在mysql中,如果我做了类似

的事情
round((amount * '0.75'),2)

似乎工作得很好,就像没有0.75的单引号一样。 mysql如何处理这个有什么不同吗?

1 个答案:

答案 0 :(得分:0)

希望结束此问题,这是一个解释表达式评估中类型转换的链接:https://dev.mysql.com/doc/refman/5.5/en/type-conversion.html

  

当运算符与不同类型的操作数一起使用时,请键入   发生转换以使操作数兼容。一些转换   隐含地发生。例如,MySQL会自动将数字转换为   必要的字符串,反之亦然。

@Cacheable("books")
@RequestMapping(method = RequestMethod.GET)
public String list(Model model) {
    System.out.println("Retrieving products");
    model.addAttribute("products", productDao.list());
    return "products/list";
}

在您的情况下,MySQL会看到算术并对表达式中包含的任何字符串执行隐式转换。将字符串转换为数字会被无意中听到,但它可以忽略不计。我的偏好是明确地输入一个数字而不是引用它。这种方法帮助我提高了代码清晰度和可维护性。