概述
本文操作环境:windows7系统、mysql8.0版、Dell G3电脑。
mysql怎么查询最后一条?
MySQL查询最后一条记录
一、环境和数据准备
1.查看当前数据库中的表
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| my_insert1 |
| my_insert2 |
+----------------+
登录后复制
2.查看my_insert1表结构
mysql> show create table my_insert1G;
*************************** 1. row ***************************
Table: my_insert1
Create Table: CREATE TABLE `my_insert1` (
`name` varchar(10) CHARACTER SET latin1 DEFAULT NULL,
`password` varchar(32) CHARACTER SET latin1 DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
登录后复制
3.查看my_insert2表结构
mysql> show create table my_insert2G;
*************************** 1. row ***************************
Table: my_insert2
Create Table: CREATE TABLE `my_insert2` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(10) CHARACTER SET latin1 DEFAULT NULL,
`password` varchar(32) CHARACTER SET latin1 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
登录后复制
4.向表my_insert1和my_insert2表中插入记录
mysql> insert into my_insert1(name,password) values ('黄飞鸿',password(123456)),('李小龙',password(123456));
mysql> insert into my_insert2(id,name,password) values (null,'黄飞鸿',password(123456)),(null,'李小龙',password(123456));
登录后复制
5.查看表的记录
mysql> select * from my_insert1;
+-----------+----------------------------------+
| name | password |
+-----------+----------------------------------+
| 黄飞鸿 | *6BB4837EB74329105EE4568DDA7DC67 |
| 李小龙 | *6BB4837EB74329105EE4568DDA7DC67 |
+-----------+----------------------------------+
mysql> select * from my_insert2;
+----+-----------+----------------------------------+
| id | name | password |
+----+-----------+----------------------------------+
| 1 | 黄飞鸿 | *6BB4837EB74329105EE4568DDA7DC67 |
| 2 | 李小龙 | *6BB4837EB74329105EE4568DDA7DC67 |
| 3 | 李连杰 | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+
登录后复制
二、当表中没有ID自增长字段和有ID自增长查看最后一条记录的方式
1.由于my_insert1,没有ID自增长,查看当前表中有多少条记录
mysql> select count(*) from my_insert1;
+----------+
| count(*) |
+----------+
| 2 |
+----------+
1 row in set (0.00 sec)
登录后复制
2.查看当前表的第2行记录
mysql> select * from my_insert1 limit 1,1;
+-----------+----------------------------------+
| name | password |
+-----------+----------------------------------+
| 李小龙 | *6BB4837EB74329105EE4568DDA7DC67 |
+-----------+----------------------------------+
1 row in set (0.00 sec)
登录后复制
3.根据ID自增长,使用子查询查看表ID字段最大值
mysql> select * from my_insert2 where id=(select max(id) from my_insert2);
+----+-----------+----------------------------------+
| id | name | password |
+----+-----------+----------------------------------+
| 3 | 李连杰 | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+
登录后复制
4.根据ID自增长,对ID字段进行倒序排序,并查看第一行
mysql> select * from my_insert2 order by id desc limit 1;
+----+-----------+----------------------------------+
| id | name | password |
+----+-----------+----------------------------------+
| 3 | 李连杰 | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+
登录后复制
5.可以根据当前insert语句使用函数last_insert_id(),查看最后一条记录
mysql> insert into my_insert2(id,name,password) values(null,'霍元甲',password('123456'));
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> select * from my_insert2 where id=(select last_insert_id());
+----+-----------+----------------------------------+
| id | name | password |
+----+-----------+----------------------------------+
| 4 | 霍元甲 | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+
1 row in set (0.00 sec)
登录后复制
【相关推荐:mysql视频教程】
以上就是mysql怎么查询最后一条记录的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是务实雨为你收集整理的mysql怎么查询最后一条记录的全部内容,希望文章能够帮你解决mysql怎么查询最后一条记录所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复