如何使用括号在选择公式字段

问题描述:

实际表并选择太长,所以我会用简单的例子,我的问题如何使用括号在选择公式字段

我有一个表(tbl_price)2列(价格1price2) 时,用简单的选择字段选择这样

SELECT price1-price2 from tbl_price 

我有没有概率LEM直到选择 使用括号,没有记录将返回:

SELECT (price1-price2) from tbl_price 

actualy我想选择这样的:

SELECT (price1-price2)/price2*100 from tbl_price 
+0

查看https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-bea-a-非常简单的SQL查询 – Strawberry

+1

这个例子很好。我怀疑你在运行的实际查询中有语法错误(不在上面的简化示例中),但是你没有检查错误。所以“没有记录将返回”真的意味着查询无法成功解析。解决方案:**每次准备或执行查询时检查错误**。 –

也许你正在尝试处理结果在PHP?

试试这样说:

在MySQL

SELECT ((price1-price2)/price2*100) AS result FROM tbl_price 

在PHP中:

echo($row['result']); 
+0

我检查,结果为空。没有错误发生(我的本地数据库是Mariadb) –

+0

我发现,如果使用+(price1 + price2)它会工作,但使用 - (price1-price2)将不返回任何记录。为什么? –

+0

在mariadb上没问题,在mysql中为空:( –

我发现问题了! 我的领域是无符号int.so结果将是无符号的,没有记录将返回。但如果我改变列签名。结果会好的