Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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
Sql 如何按月计算列中的值?_Sql_Dataframe - Fatal编程技术网

Sql 如何按月计算列中的值?

Sql 如何按月计算列中的值?,sql,dataframe,Sql,Dataframe,在我的数据框架中,我试图计算每个月一列的值的数量,由SQL中的时间列给出。我希望输出具有每个月列中的值数量计数。我知道我可以使用where函数计算一个月,我可以在12个月内都这样做,但我想知道是否有更有效的方法。 下面是一个效率低下的例子: SELECT count(column1) AS Total FROM DataFrame WHERE MONTH(date) == 1 GROUP by column1 ORDER by count(column1) DESC LIMIT 10

在我的数据框架中,我试图计算每个月一列的值的数量,由SQL中的时间列给出。我希望输出具有每个月列中的值数量计数。我知道我可以使用where函数计算一个月,我可以在12个月内都这样做,但我想知道是否有更有效的方法。 下面是一个效率低下的例子:

SELECT
    count(column1) AS Total
FROM DataFrame
WHERE MONTH(date) == 1
 GROUP by column1 ORDER by count(column1) DESC LIMIT 10
我试图每月计算一列的不同值,由SQL中的时间列给出。我

您似乎希望按
分组:

SELECT MONTH(date) as mon, approx_count_distinct(column1, 0.1) AS Total
FROM DataFrame
GROUP by MONTH(date)
ORDER by Total DESC
LIMIT 10;

请注意,在日期上使用
MONTH()
而不使用
YEAR()
或过滤器是非常可疑的。

请标记您正在使用的数据库。请提供示例数据和所需结果。删除
其中的
。添加12列,如
count(如果月份(日期)=1,则为1结尾)作为1月份
当结果跨越一年以上时要小心。还可以搜索“条件聚合”和“透视表”以获取更多信息。不清楚您是希望输出12行还是12列。我们似乎不明白您的要求。@shawnt00抱歉,您的回答是正确的!非常感谢。我想按第1列中的值分组though@GraceSullivan . . . 这毫无意义
approx\u count\u distinct()
是一个聚合函数——至少在我所知道的任何具有该函数的数据库中。我得说,通过聚合函数进行聚合是不寻常的。你的问题已经被这里的问题回答了。对不起!我的意思是这只是一个计数,而不是一个明显的计数。例如,我想知道x是否在1月的第15列,2月的第0列,等等,然后y在1月的第12列,等等。