2014-09-29 63 views
1

这是我对这个问题的第二个问题。我想获得列roll_sum 脚本的总和:sql server ISNULL不适用于我的查询

($sum_number + (SELECT SUM(roll_sum) FROM table_name)) 

不起作用,因为collumn ROLL_SUM为NULL。但如果尝试使用替换:

($sum_number + (SELECT SUM(ISNULL(roll_sum, 0)) FROM table_name)) 

不能正常工作。但第二个脚本应该将NULL替换为0?

+0

我觉得你的SELECT语句不返回任何行。 – AK47 2014-09-29 09:03:34

+0

如何ISNULL((SELECT SUM(roll_sum)from table_name),0) – Rishabh 2014-09-29 09:05:08

+1

'SELECT COALESCE(SUM(roll_sum),0)FROM table_name' – Wanderer 2014-09-29 09:05:54

回答

1

交换ISNULL()SUM()

SELECT isnull(SUM(roll_sum), 0) FROM table_name; 
0

我认为你的sql查询没有问题,但是,你直接在php语句中调用sql查询。 以下是示例代码。请参阅它。

$db = mysql_connect("hostname", "username", "password"); 
mysql_select_db("dbname", $db) or die("connection failed"); 

$query = mysql_query("select sum(roll_sum) as sum from table_name", $db); 
$query_row = mysql_fetch_array($query); 

// to do something you want 
$value = $sum_number + $query_row["sum"]; 

mysql_close($db);