【发布时间】:2018-01-23 16:53:43
【问题描述】:
我是 SQL 的新手,我在工作中写了一些 SQL 查询。 我遇到了某个拦截器,你们能帮我解决一下吗?
这是我使用的查询(仅使用 1 行作为参考):
Select
USER_NAME,
TIME(CONVERT_TZ(START_TIME, '+00:00','America/Los_Angeles')) as 'PST Start',
TIME(CONVERT_TZ(END_TIME, '+00:00','America/Los_Angeles')) as 'PST End',
name as 'Type',
date(start_time) as 'Date',
WORKGROUP_NAME
from USER_SCHEDULE_INSTANCES
where user_name = 'prateeth'
and date(START_TIME) = '2018-01-01'
limit 1
这是输出
USER_NAME PST Start PST End Date Type WORKGROUP_NAME
prateeth 06:00:00 09:00:00 2018-01-01 Work NACS Command Center
如何在不使用宏的情况下将其分成半小时间隔并接收如下输出:
USER_NAME PST Start PST End Date Type WORKGROUP_NAME
prateeth 06:00:00 06:30:00 2018-01-01 Work NACS Command Center
prateeth 06:30:00 07:00:00 2018-01-01 Work NACS Command Center
prateeth 07:00:00 07:30:00 2018-01-01 Work NACS Command Center
prateeth 07:30:00 08:00:00 2018-01-01 Work NACS Command Center
prateeth 08:00:00 08:30:00 2018-01-01 Work NACS Command Center
prateeth 08:30:00 09:00:00 2018-01-01 Work NACS Command Center
【问题讨论】:
-
可能有更优雅的方法,但我喜欢在这里创建一个参考表,供您加入(可以接受交叉联接),其中记录了时间范围。
-
我喜欢同样的方法,因为性能非常好。
-
@Prateeth 。 . .这是一个相当复杂的查询。
-
好吧,业余爱好者,不是首发:D
标签: mysql sql mysql-workbench