如何使用括号在选择公式字段
实际表并选择太长,所以我会用简单的例子,我的问题如何使用括号在选择公式字段
我有一个表(tbl_price)2列(价格1,price2) 时,用简单的选择字段选择这样
SELECT price1-price2 from tbl_price
我有没有概率LEM直到选择 使用括号,没有记录将返回:
SELECT (price1-price2) from tbl_price
actualy我想选择这样的:
SELECT (price1-price2)/price2*100 from tbl_price
也许你正在尝试处理结果在PHP?
试试这样说:
在MySQL:
SELECT ((price1-price2)/price2*100) AS result FROM tbl_price
在PHP中:
echo($row['result']);
我检查,结果为空。没有错误发生(我的本地数据库是Mariadb) –
我发现,如果使用+(price1 + price2)它会工作,但使用 - (price1-price2)将不返回任何记录。为什么? –
在mariadb上没问题,在mysql中为空:( –
我发现问题了! 我的领域是无符号int.so结果将是无符号的,没有记录将返回。但如果我改变列签名。结果会好的
查看https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-bea-a-非常简单的SQL查询 – Strawberry
这个例子很好。我怀疑你在运行的实际查询中有语法错误(不在上面的简化示例中),但是你没有检查错误。所以“没有记录将返回”真的意味着查询无法成功解析。解决方案:**每次准备或执行查询时检查错误**。 –