【发布时间】:2022-02-07 22:58:40
【问题描述】:
我对 SQL 完全陌生,而且我很挣扎。我需要从下面提到的日期运行查询,并将时间戳数据拆分为轮班时间 6-13:59、14-21:59 和 22 - 05:59。我需要看看在这几个小时之间发送了多少货物。我想出了类似的方法,但它似乎不起作用。
当我输入不带时间戳的日期时,数据会返回,但我只想返回那些在 6 到 14 之间发送的行。SDG 表包含时间戳,所以我不明白为什么不工作。
select s1.date, k.su, count(distinct s1.nr) AMO_SHIP2021
from sdg s1 , client k
where s1.clientnr in ('1')
and s1.date between '01.12.2021 06:00:00' and '14.12.2021 13:59:59'
and s1.function in ('20')
and k.nr = s1.clientnr
group by s1.date, k.su, s1.function
【问题讨论】:
-
请使用现代连接语法而不是 1980 年代的旧 SQL。