回答

收藏

MYSQL-检索日期之间的时间戳

技术问答 技术问答 254 人阅读 | 0 人回复 | 2023-09-14

全部,# y$ `7 V0 F% _
我有一个带有称为时间戳记的列的MYSQL表。它的DATETIME数据类型为“ 10/1/2009 3:25:08 PM”,“ 10/1/2009& W4 ^  g8 X5 Y" {; \* H  N
3:30:05 PM”,“ 10/4/2009 3:40:01 PM”,等等..5 o7 x: T. j2 [- G
我想编写一个SQL查询来选择在两个日期之间出现的时间戳字段中的所有值。. S: v7 }: I( e0 U3 B
select timestamp from tablename where timestamp >= userStartDate and timestamp userInput日期将没有时间部分。您能为此建议正确的MySQL查询语法吗?谢谢1 |+ k( r, V1 `; @) T9 X% E
               
  A; p3 D7 K2 ?/ J3 n. E解决方案:
7 \1 R: ~# z  M: j7 D( ?& J; i! \                / ]$ @) M2 a8 }$ q

% z& F3 Z; r  k) A; Z
* L6 q/ z% M5 G" V+ D/ b5 K1 Z                SELECT timestamp
' S% @5 W6 S9 a+ x( j' rFROM   tablename0 k# y; E; m! c; d# E; I
WHERE  timestamp >= userStartDate
1 ^' E9 p( A+ l# k4 ^8 {* m: F       AND timestamp 如果这些字段的类型为(无时间部分),则将选择日期部分在userStartDate和之间的每条记录。userEndDate``DATE: h/ w% Q$ o8 u- |# h  Z/ u
如果开始日期和结束日期为字符串,请使用STR_TO_DATE从任何给定格式进行转换:) J& Y% T) H. J  h, g
SELECT timestamp, u8 f( m' P2 R# q0 r# J
FROM   tablename
' n# w4 P" T# d- d! n" j2 _$ r5 R8 lWHERE  timestamp >= STR_TO_DATE('01/11/2010', '%m/%d/%Y'), g1 D* W7 Q& R8 Q! o
       AND timestamp < STR_TO_DATE('01/12/2010', '%m/%d/%Y') + INTERVAL 1 DAY
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则