mysql选择最小价格值排除零
我需要获取最小价格值并从数据库中排除零值。以下是不起作用的mysql查询:mysql选择最小价格值排除零,mysql,Mysql,我需要获取最小价格值并从数据库中排除零值。以下是不起作用的mysql查询: SELECT MIN(price) AS lowprice FROM price WHERE status = 1 AND price > 1 LIMIT 1 我在自己的数据库中尝试了这一点,并使用了: SELECT MIN(price) AS lowprice FROM price WHERE status = 1 AND price > 0 这给了我status=1和price>0的所有值。 所以
SELECT MIN(price) AS lowprice FROM price WHERE status = 1 AND price > 1 LIMIT 1
我在自己的数据库中尝试了这一点,并使用了:
SELECT MIN(price) AS lowprice
FROM price
WHERE status = 1 AND price > 0
这给了我status=1和price>0的所有值。
所以唯一的区别是price>0
而不是price>1
。但是如果您还想排除1的值,那么price>1
也可以
更新:
正如评论中所说,您不需要
限制1
。我把它忘在代码中了,但没有提到这一点。我在自己的数据库中尝试了这一点,并使用了:
SELECT MIN(price) AS lowprice
FROM price
WHERE status = 1 AND price > 0
这给了我status=1和price>0的所有值。
所以唯一的区别是price>0
,而不是price>1
。但是如果您还想排除1的值,那么price>1
也可以
更新:
正如评论中所说,您不需要
限制1
。我在代码中没有提到这一点。在MySQL中,可以使用NULLIF函数
SELECT MIN(NULLIF(price, 0)) AS lowprice FROM price WHERE status=1
NULLIF将把price值与0进行比较,如果为true,则返回null。在MySQL中,可以使用NULLIF函数
SELECT MIN(NULLIF(price, 0)) AS lowprice FROM price WHERE status=1
NULLIF会将价格值与0进行比较,如果为真,则返回null。
从状态为1且价格为0的价格中选择最低(价格)作为低价。
已尝试但未生效您说不生效是什么意思?结果中仍有零值显示证据。提供完整的代码片段。和数据样本<代码>从状态为1且价格>0的价格中选择最低(价格)作为最低价格<代码>已尝试但未工作是什么意思?结果中仍有零值显示证据。提供完整的代码片段。数据样本也不需要LIMIT 1
withMIN()
也不需要LIMIT 1
withMIN()