Pandas strftime语句中的SQLITE非重复计数引发错误

Pandas strftime语句中的SQLITE非重复计数引发错误,pandas,sqlite,strftime,Pandas,Sqlite,Strftime,我通过jupyter笔记本中的Pandas在SQLite中查询 下面的查询按预期运行,但我希望dayofweek_计数计算每个工作日的发生次数。每天可以有多个条目(即20年2月17日星期一可以有4个条目,但我只希望20年2月17日星期一计数一次) 但是这个查询在DISTINCT附近抛出了一个语法错误,但我似乎不知道为什么。我尝试了DISTINCT(事件日期)和DISTINCT事件日期 df_total_weekday=pd.read_sql_query("SELECT CASE cast(str

我通过jupyter笔记本中的Pandas在SQLite中查询

下面的查询按预期运行,但我希望dayofweek_计数计算每个工作日的发生次数。每天可以有多个条目(即20年2月17日星期一可以有4个条目,但我只希望20年2月17日星期一计数一次)

但是这个查询在DISTINCT附近抛出了一个语法错误,但我似乎不知道为什么。我尝试了DISTINCT(事件日期)和DISTINCT事件日期

df_total_weekday=pd.read_sql_query("SELECT CASE cast(strftime('%w', event_date) as integer)" 
        "when 0 then 'Sunday'"
        "when 1 then 'Monday'"
        "when 2 then 'Tuesday'"
        "when 3 then 'Wednesday'"
        "when 4 then 'Thursday'" 
        "when 5 then 'Friday'"
        "else 'Saturday' end as dayofweek"
        ",COUNT(strftime('%w',DISTINCT event_date)) as dayofweek_count"
        ",SUM(quantity) as total_quantity FROM subscription_data GROUP BY 1 ORDER BY strftime('%w', event_date)",conn,parse_dates=['event_date'])
我错过了什么

COUNT(strftime('%w',DISTINCT event_date))

这是一个语法错误,因为
strftime()
不理解
DISTINCT
;它不是聚合函数(对于聚合函数,它只适用于具有单个参数的函数)
COUNT(strftime(…)
无论如何都没有多大意义,除非您的一些
event\u date
值不是可接受的日期/时间字符串(这将使
strftime()
返回
NULL
)。我建议以几行
create table…
insert…
的形式提供一个定制的玩具数据库,可以在SQLite命令行工具中使用。我怀疑DISTINCT在错误的位置,希望进行实验。此查询的目标是获取一周中的天数和每个条目的关联计数,以及每个条目所附加的关联数量的总和。每个日期可以有多个(或没有)条目。那么,是否可以有一个查询输出:SUNDAY,43,12909,其中43是星期天的唯一日期数,12909是星期天日期附加的数量总和?
COUNT(strftime('%w',DISTINCT event_date))