[英]SQL Oracle: How can I return data with a timestamp and how to filter it?
我对 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
我非常感谢您的帮助!
您应该在那里发布表结构。 通常,如果您的列是 Date 类型,您需要使用
BETWEEN<\/code>与日期而不是字符串来操作日期
s1.date BETWEEN to_date('01.12.2021 06:00:00', 'DD.MM.YYYY HH:MI:SS') AND
to_date('14.12.2021 13:59:59', 'DD.MM.YYYY HH:MI:SS')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.