查询以包括当日+次日直到特定时间的所有交易

时间:2018-10-22 09:24:06

标签: sql sql-server date datetime time

我无法为当日+午夜3时之后的所有交易生成查询

这是我的查询的片段

where Date between '1-May-2018' and '2-May-2018' and Time <= '1754-01-01 03:00:00'

我想要2018年5月1日的所有交易,并且只希望在5月2日凌晨3点之前进行交易。 如何编写此查询?

请注意,日期和时间是单独的列:

日期示例列:2018-10-19 00:00:00.000
时间栏样本:1754-01-01 00:12:58.247

我们不仅需要在“日期”列上进行过滤,还需要在“时间”列上进行过滤吗?

谢谢

4 个答案:

答案 0 :(得分:3)

在以下条件下使用以下条件

- name: Copy local file to remote
  copy:
    src: "{{ tmpLocalRuleFile }}"
    dest: "{{ tmpFolder }}/{{ tmpRuleFile }}"
  become: true

答案 1 :(得分:2)

在操作员之间使用:

SELECT * FROM table
WHERE date  BETWEEN '2018-05-01 00:00:00' AND '2018-05-02 03:00:00';

答案 2 :(得分:0)

尝试一下:

WHERE STR_TO_DATE(CONCAT(date, ' ', time), '%Y-%m-%d %H:%i:%s') BETWEEN '2018-05-01 00:00:00' AND '2018-05-02 03:00:00';

还:时间列是什么类型?

答案 3 :(得分:0)

假设您正在使用SQL Server,则需要以下WHERE子句:

WHERE CAST(Date AS DATE) = CAST(CURRENT_TIMESTAMP AS DATE) OR (
      CAST(Date AS DATE) = DATEADD(DAY, 1, CAST(CURRENT_TIMESTAMP AS DATE)) AND
      CAST(Time AS TIME) <= '03:00:00'
)