在MySQL中根据日期搜索记录?
让我们首先创建一个表-
mysql> create table DemoTable732 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, PassengerId int, PassengerName varchar(100), PassengerAge int, PassengerTravelDatetime datetime );
使用insert命令在表中插入一些记录-
mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(110,'Chris',25,'2019-07-23 12:45:56'); mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(120,'Robert',24,'2019-07-21 11:05:00'); mysql> insert into DemoTable732(PassengerId,PassengerName,PassengerAge,PassengerTravelDatetime) values(120,'Sam',26,'2019-07-21 11:05:00');
使用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)
这是对简单SELECTCOUNTSQL查询错误的查询-
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)