查询数据库中的 timestamp(时间戳)记录 时,具体写法取决于你使用的数据库类型(MySQL、PostgreSQL、Oracle、SQL Server 等)以及你想按什么方式查。下面按常见场景给你一个通用说明。
MySQL / PostgreSQL
SELECT *
FROM your_table
WHERE create_time = '2024-01-01 10:30:00';
✅ 注意:
SELECT *
FROM your_table
WHERE DATE(create_time) = '2024-01-01';
⚠️ 不推荐在大表上使用(不走索引)
✅ 推荐写法(范围查询)
SELECT *
FROM your_table
WHERE create_time >= '2024-01-01 00:00:00'
AND create_time < '2024-01-02 00:00:00';
SELECT *
FROM your_table
WHERE create_time >= CURDATE();
SELECT *
FROM your_table
WHERE create_time >= CURRENT_DATE;
SELECT *
FROM your_table
WHERE create_time >= NOW() - INTERVAL 30 MINUTE;
SELECT *
FROM your_table
WHERE create_time >= NOW() - INTERVAL '30 minutes';
SELECT *
FROM your_table
WHERE create_time BETWEEN '2024-01-01 00:00:00'
AND '2024-01-31 23:59:59';
✅ 更推荐
WHERE create_time >= '2024-01-01'
AND create_time < '2024-02-01'
| 功能 | 示例 |
|---|---|
| 当前时间 | NOW() |
| 日期部分 | DATE(timestamp) |
| 时间戳转字符串 | DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') |
| 转成时间戳 | UNIX_TIMESTAMP(create_time) |
| 功能 | 示例 |
|---|---|
| 当前时间 | NOW() |
| 日期部分 | create_time::date |
| 时间戳转字符串 | TO_CHAR(create_time, 'YYYY-MM-DD HH24:MI:SS') |
| 时间戳转 Unix | EXTRACT(EPOCH FROM create_time) |
SELECT *
FROM your_table
WHERE create_time >= (NOW() AT TIME ZONE 'Asia/Shanghai') - INTERVAL '1 hour';
✅ 检查:
datetime / timestamp✅ 检查:
DATE(create_time))你可以告诉我:
我可以直接帮你写 可执行的 SQL。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。