PHP/MYSQL : Value 0 if record isn't yet in database

标签 php mysql mysqli

我有以下查询:

$query = "SELECT (SELECT SUM(net_amount) FROM fin_costos WHERE month='1' AND group_of_costos='general' AND year_analysis='2014' ) + 
(SELECT SUM(net_amount) FROM em2_fin_costs WHERE month='1' AND group_of_costos='general' AND year_analysis='2014') AS total";

它基本上是从不同表检索的 2 个值的 SUM。 当在其中一个 SELECT 语句中,记录尚未存在于数据库中并创建 NULL 时,即使第二个 SELECT > 获取一个值,创建一个 NULL

问题:如果记录尚未存在于数据库中,如何将 SELECT 语句的结果转为 0。

最佳答案

使用IFNULL():

SELECT IFNULL((SELECT SUM(net_amount) FROM fin_costos WHERE month='1' AND group_of_costos='general' AND year_analysis='2014' ), 0) + 
IFNULL((SELECT SUM(net_amount) FROM em2_fin_costs WHERE month='1' AND group_of_costos='general' AND year_analysis='2014'), 0) AS total

关于PHP/MYSQL : Value 0 if record isn't yet in database,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27272853/

相关文章:

php - 确定 SQL 查询是否改变了数据库结构

mysql - OTRS fatal error

php - 以表的形式显示mysql_fetch_assoc的结果

java - 如何选择特定日期的某些行

php - WC_Order->get_items() 返回空项目

php - 使用一个查询和一个 php 文件显示两个不同表中的图像

php - 在 drupal 7.0 中页面加载时将数据库值保存在文本字段中

php - 如何使用php在mysql中存储敏感的用户数据

mysql - 在 MySql 表上进行全文搜索(Innodb 与 ISAM)

php - 选择半径内的纬度和经度点