在 MySQL 中根据日期搜索记录?

mysqlmysqli database更新于 2025/10/4 13:00:17

我们先创建一个表 -

mysql> create table DemoTable732 (
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   PassengerId int,
   PassengerName varchar(100),
   PassengerAge int,
   PassengerTravelDatetime datetime
);
Query OK, 0 rows affected (0.67 sec)

使用 insert 在表中插入一些记录 command -

mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(110,'Chris',25,'2019-07-23 12:45:56');
Query OK, 1 row affected (0.40 sec)
mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(120,'Robert',24,'2019-07-21 11:05:00');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(120,'Sam',26,'2019-07-21 11:05:00');
Query OK, 1 row affected (0.30 sec)

使用 select 语句显示表中的所有记录 -

mysql> select *from DemoTable732;

这将产生以下输出 -

+----+-------------+---------------+--------------+-------------------------+
| Id | PassengerId | PassengerName | PassengerAge | PassengerTravelDatetime |
+----+-------------+---------------+--------------+-------------------------+
| 1  | 110         | Chris         | 25           | 2019-07-23 12:45:56     |
| 2  | 120         | Robert        | 24           | 2019-07-21 11:05:00     |
| 3  | 120         | Sam           | 26           | 2019-07-21 11:05:00     |
+----+-------------+---------------+--------------+-------------------------+
3 rows in set (0.00 sec)

这是对简单 SELECT COUNT SQL 查询错误的查询 -

mysql> select count(Id) from DemoTable732 where PassengerId=120 and
date(PassengerTravelDatetime)='2019-07-21';

这将产生以下输出 -

+-----------+
| count(Id) |
+-----------+
| 2         |
+-----------+
1 row in set (0.00 sec)

相关文章


有用资源