Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mysql月与年之间的总和_Php_Mysql - Fatal编程技术网

Php Mysql月与年之间的总和

Php Mysql月与年之间的总和,php,mysql,Php,Mysql,我需要产品数量的报告,月和年之间。。。 我使用此查询,但提取金额为0 SELECT SUM(amount) as amt FROM `products` WHERE `cid`='14' AND `sid`='24' AND MONTH(`date`)='03' AND YEAR(`date` BETWEEN '2014' AND '2016') 试试这个:(将带来2014年3月、2015年3月、2016年3月的数据) 如果要在这两个日期之间获取所有数据,请尝试以下操作: SELE

我需要产品数量的报告,月和年之间。。。 我使用此查询,但提取金额为
0

SELECT SUM(amount) as amt 
FROM `products` 
WHERE `cid`='14' 
AND `sid`='24' 
AND MONTH(`date`)='03' 
AND YEAR(`date` BETWEEN '2014' AND '2016') 
试试这个:(将带来2014年3月、2015年3月、2016年3月的数据)

如果要在这两个日期之间获取所有数据,请尝试以下操作:

SELECT SUM(amount) as amt 
FROM `products` 
WHERE `cid`='14' 
AND `sid`='24' 
AND `date` >= '2014-03-01 00:00:00' AND  `date` < '2016-04-01 00:00:00'
选择总和(金额)作为金额
来自“产品”
其中'cid`='14'
和'sid`='24'
“日期”>=“2014-03-01 00:00:00”和“日期”<“2016-04-01 00:00:00”

尝试此查询:-[测试我自己]

表数据-

id cid sid amount date 
1 14 24 200 2014-03-09 
2 14 24 30 2014-03-09 
3 14 24 50 2015-05-08
查询:-

SELECT SUM(amount) as amt FROM products WHERE cid='14' AND sid='24' AND MONTH(date)='3' AND YEAR(date) BETWEEN '2014' AND '2016'
输出:-

amt
230


注意:-确保您的日期列的数据类型为Date

您的意思是显示数据库结构吗?如输入3条记录,即月份03和年份2014,记录cid=14和sid=24,@fana plz共享您的表结构,并且一些虚拟数据表结构为<代码>id cid sid金额日期1 14 24 200 2014-03-09 2 14 24 30 2014-03-09 3 14 24 50 2015-05-08这是我的数据库结构。如果日期字段的类型是DATETIME,请遵循Waldson Patricio的答案。@Bit_hunter这个答案对我不适用。我没有接受这个答案。
请检查屏幕截图重复金额2013年9月和相同金额重复金额2014年9月,此记录通过您的查询获取。在此处输入代码
检查此链接我上传屏幕截图。。。使用此查询时,请查看表数据和查询结果,并多次重复年和月此查询再次打印记录到下一年的同一个月,您将看到上次共享屏幕截图。希望你能理解我。当我提交两个日期的表单时,我还希望在两个日期之间的左列显示月份列表。对于月份列表,我使用
foreach
在这个循环之后,我运行您的查询,当查询在循环中运行时,他在年和同一个月之间重复记录。。。再次看到我的屏幕截图@fana请尝试使用一些虚拟数据,并在此处共享您的查询结果。由于此查询在我的虚拟表上运行良好。我将与您共享我的数据库表和数据,并接受结果表,我需要月报,第一个表是类别,第二个表是分区,最后一个表是产品,当选择任何一个类别时,从表产品中搜索记录,这里有
cid
sid
按月份和年份提取记录,分享您的屏幕截图,希望您能理解
amt
230