Skip to content

QueenieCplusplus/SQL_Time_Range

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 

Repository files navigation

SQL_Time_Range

因為 Sql 的 between min And max 是 value >=min && value <= max (包含)的意思

所以精確的不寫死寫法是

MaxTime = theDate.AddDays(1).AddSeconds(-1);

MinTime = theDate 時間歸零;

select * from table_name between MinTime and MaxTime;

///

SELECT DATEADD( 時間單位, 時間單位的次數即量 , baseDate);

beseDate 起始日期

時間單位如設定為 s

當天的 s 量為 23 h: 59 m: 59 s = 23 * 60 * 60 + 59 * 60 + 59 

= 82800 + 3540 + 59 = 86399

///

select * 
from log_table 
where EventTime 
between CURRENT_DATE() and DATEADD(SECOND, 86399, CURRENT_DATE());

SELECT CURRENT_DATE(); --   2009-06-08
SELECT CURRENT_DATE() + 1; --   2009-06-09
select date_format(CURRENT_DATE(), '%Y-%M-%D'); -- 2020-June-8th
select date_format(CURRENT_DATE(), '%Y-%m-%d 00:00:00'); -- 2020-06-08
  • mysql 中使用 unix_timestamp 和 FROM_UNIXTIME 可以不用指定日期类型。

///

    %M 月名字(January~December) 
    %W 星期名字(Sunday~Saturday) 
    %D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。) 
    %Y 年, 数字, 4 位 
    %y 年, 数字, 2 位 
    %a 缩写的星期名字(Sun~Sat) 
    %d 月份中的天数, 数字(00~31) 
    %e 月份中的天数, 数字(0~31) 
    %m 月, 数字(01~12) 
    %c 月, 数字(1~12) 
    %b 缩写的月份名字(Jan~Dec) 
    %j 一年中的天数(001~366) 
    %H 小时(00~23) 
    %k 小时(0~23) 
    %h 小时(01~12) 
    %I 小时(01~12) 
    %l 小时(1~12) 
    %i 分钟, 数字(00~59) 
    %r 时间,12 小时(hh:mm:ss [AP]M) 
    %T 时间,24 小时(hh:mm:ss) 
    %S 秒(00~59) 
    %s 秒(00~59) 
    %p AM或PM 
    %w 一个星期中的天数(0=Sunday ~6=Saturday ) 
    %U 星期(0~52), 这里星期天是星期的第一天 
    %u 星期(0~52), 这里星期一是星期的第一天 
    %% 一个文字% 

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published