SQL 以在日期或时间上使用 where 子句筛选时间戳



我有这个表,我正在尝试根据date_time_stamp字段中的日期或月份过滤记录

+---------------+-----------------+
| name          | date_time_stamp |
+---------------+-----------------+
| John          |      1329828975 |
+---------------+-----------------+
| Ken           |      1428728929 |
+---------------+-----------------+
| Bennedict     |      1526758965 |
+---------------+-----------------+
| Lily          |      1725498952 |
+---------------+-----------------+

以下SQL只能从表中获取日,月和年,但添加了WHERE day=5标志错误

SELECT us.lessons_ID,
us.from_timestamp,
us.users_LOGIN,
DAY(FROM_UNIXTIME(us.from_timestamp)) as 'day',
MONTH(FROM_UNIXTIME(us.from_timestamp))  as 'month',
YEAR(FROM_UNIXTIME(us.from_timestamp))  as 'year'
FROM users_to_lessons  us

所以我的问题是我如何从此表中过滤月份等于5 月或 6 月等的记录或基于日期进行过滤,甚至基于月、日和年进行过滤

如果有人能给我一个线索,会很高兴

感谢@GiorgosBetsos。

正确的 SQL 变成这样

SELECT us.lessons_ID,
us.from_timestamp,
us.users_LOGIN,
DAY(FROM_UNIXTIME(us.from_timestamp)) as 'day',
MONTH(FROM_UNIXTIME(us.from_timestamp))  as 'month',
YEAR(FROM_UNIXTIME(us.from_timestamp))  as 'year'
FROM users_to_lessons  us
WHERE DAY(FROM_UNIXTIME(us.from_timestamp)) = 5

最新更新