将两个表值与当前日期(今天日期)相加


Addition Of Two table value with current date(Todays Date)

我试图从不同的表中添加总值的总和。这个查询很成功,但我想添加当前日期。

1 表2
日期 Total_Cost 日期 Total_Cost
2015/1/21 500 2015/1/21 500

SELECT (SELECT SUM(Total_Cost) FROM Table1) + (SELECT SUM(Total_Cost) FROM Table2) as total

它给出的正确答案:1000

但是我使用当前日期运行此查询添加。

SELECT (SELECT SUM(Total_Cost) FROM Table1 WHERE DATE =  CURDATE()) + (SELECT SUM(Total_Cost) FROM Table2 WHERE DATE =  CURDATE()) as total

其给出值:空

请帮我一个人解决这个问题,提前谢谢你。

您的查询需要使用 ISNULL 来应对您的任一 select 语句(即 NULL 值)可能不返回任何行的可能性,例如

ISNULL(SELECT SUM(X) FROM Table1 WHERE Date=CURDATE(),0.0) 

甚至:

SELECT ISNULL(SUM(Total_Cost),0.0) FROM 
(
  SELECT Total_Cost FROM Table1 WHERE Date = CURDATE()
  UNION ALL
  SELECT Total_Cost FROM Table2 WHERE Date = CURDATE()
) S1
抱歉,如果

这不是有效的MySQL语法,我对SQL Server更熟悉,但我希望它能有所帮助。