本踩坑指南视本人使用情况和本人心情不定期更新,很多是独家解决方案。如有更优解,欢迎在底下留言指出,共同探讨!
1. divide的分母为0判断无效
select divide(12.3456, 0);
返回∞
是正常的,但是如果是正常数据库里面的内容
select divide(cost_sum, new_100_num)
在数据库字段中new_100_num的值为0时,会报错:
DB::Exception: Division by zero: while executing 'FUNCTION divide
只能通过if子句来解决:
select
if(cost_sum=0 or new_100_num = 0, cast(0 as Decimal(18,4)), cost_su...