我如何检查使用 max() 等 sql 函数的查询是否返回 NULL? 这是我的代码:
$query = mysql_query("SELECT MAX(priority) FROM categories") or die('sel_pri:'.mysql_error());
if(mysql_num_rows($query) > 0)
$max_pri = mysql_result($query, 0) or die('priority:'.mysql_error());
else
$max_pri = 0;
我的类别表是 epmty,所以 mysql_num_rows()
将返回 1,因为此查询将返回 1 行 NULL 值。上面的代码“死了”!
我也试过:
if(empty($query))
if(isset($query))
if(is_null($query))
但以上都不起作用。
最佳答案
在您的情况下,您还可以使用 coalesce
在 SQL 中提供默认值,它返回第一个非空参数:
SELECT COALESCE(MAX(priority), 0) FROM categories
关于mysql - 如何检查带有 max、count 等 sql 函数的查询返回 NULL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15840892/