SQL 排除周末和公共/银行假日
Posted
技术标签:
【中文标题】SQL 排除周末和公共/银行假日【英文标题】:SQL exclude weekends and public/bank holidays 【发布时间】:2021-04-27 10:29:15 【问题描述】:在我的表格中,我有一列充满日期。所有日期仅从 2021 年初到现在。
我目前正在使用此代码来获取不同时间戳的计数:
SELECT COUNT(DISTINCT TRUNC(order_timestamp))
我可以在此代码中或之后添加什么以排除周末吗?
【问题讨论】:
【参考方案1】:您可以使用以下方法忽略周末:
SELECT COUNT(DISTINCT CASE WHEN DATE_PART(dow, TRUNC(order_timestamp)) BETWEEN 1 AND 5
THEN TRUNC(order_timestamp)
END)
DATE_PART()
返回以 0
开头的星期几,表示星期日。所以工作日的值介于1
和5
之间。
【讨论】:
以上是关于SQL 排除周末和公共/银行假日的主要内容,如果未能解决你的问题,请参考以下文章