所以我要做的就是创建一份报告,显示公司每周的销售额。
所以我们有一个名为created的时间字段,如下所示:
2016-04-06 20:58:06 UTC
此字段表示销售的时间。
现在假设我想创建一份报告,告诉您每周的销售量。所以上面的例子将属于" 2016-04-03周和#34; (它没有必要确切地说,我只是采取最简单的方式来做到这一点)
有人有什么建议吗?我想它涉及使用UTEC_TO_xxxxxx函数。
答案 0 :(得分:4)
您可以使用WEEK()功能 - 它会为您提供周数
SELECT WEEK('2016-04-06 20:58:06 UTC')
如果您需要一周的第一天 - 您可以尝试类似
的内容STRFTIME_UTC_USEC((UTC_USEC_TO_WEEK(TIMESTAMP_TO_USEC(TIMESTAMP('2016-05-02 20:58:06 UTC')), 0)),'%Y-%m-%d')
答案 1 :(得分:1)
我不得不添加括号:
SELECT DATE_TRUNC(DATE('2016-04-06 20:58:06 UTC'), WEEK) as week;
答案 2 :(得分:0)
文档建议使用标准的SQL函数,例如DATE_TRUNC():
SELECT DATE_TRUNC(DATE '2019-12-25', WEEK) as week;