>  기사  >  데이터 베이스  >  mysql에서 마지막 레코드를 쿼리하는 방법

mysql에서 마지막 레코드를 쿼리하는 방법

藏色散人
藏色散人원래의
2021-12-01 15:33:5321541검색

mysql에서 마지막 레코드를 쿼리하는 방법: 1. 현재 데이터베이스의 테이블 및 테이블 구조를 봅니다. 2. ID 자동 증가에 따라 ID 필드를 역순으로 정렬하고 첫 번째 행을 봅니다. 현재 insert 문에 따른 함수 last_insert_id()는 마지막 레코드를 확인할 수 있습니다.

mysql에서 마지막 레코드를 쿼리하는 방법

이 문서의 운영 환경: Windows 7 시스템, mysql 버전 8.0, Dell G3 컴퓨터.

mysql에서 마지막 레코드를 쿼리하는 방법은 무엇입니까?

MySQL이 마지막 레코드를 쿼리합니다

1. 환경 및 데이터 준비

1. 현재 데이터베이스의 테이블 보기

mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| my_insert1 |
| my_insert2 |
+----------------+

2. 구조

mysql> show create table my_insert1\G;
*************************** 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_insert2\G;
*************************** 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에 레코드를 삽입합니다. 2. ID 자동 증가 필드가 없는 경우 테이블에 ID 자동 증가가 있는 경우 마지막 레코드 보기 방법

1. my_insert1이므로 ID 자동 증가가 없으므로 현재 테이블에 몇 개의 레코드가 있는지 확인

mysql> select * from my_insert1;
+-----------+----------------------------------+
| name      | password                         |
+-----------+----------------------------------+
| 黄飞鸿    | *6BB4837EB74329105EE4568DDA7DC67 |
| 李小龙    | *6BB4837EB74329105EE4568DDA7DC67 |
+-----------+----------------------------------+
 
mysql> select * from my_insert2;
+----+-----------+----------------------------------+
| id | name      | password                         |
+----+-----------+----------------------------------+
|  1 | 黄飞鸿    | *6BB4837EB74329105EE4568DDA7DC67 |
|  2 | 李小龙    | *6BB4837EB74329105EE4568DDA7DC67 |
|  3 | 李连杰    | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+

2. 현재 테이블의 기록

mysql> select count(*) from my_insert1;
+----------+
| count(*) |
+----------+
| 2 |
+----------+
1 row in set (0.00 sec)

3. ID 자동 증가에 따라 하위 쿼리를 사용하여 테이블 ID 필드의 최대값을 확인합니다.

mysql> select * from my_insert1 limit 1,1;
+-----------+----------------------------------+
| name | password |
+-----------+----------------------------------+
| 李小龙 | *6BB4837EB74329105EE4568DDA7DC67 |
+-----------+----------------------------------+
1 row in set (0.00 sec)

4. ID 필드를 ID 자동 증가에 따라 역순으로 정렬합니다. , 그리고 첫 번째 행을 봅니다

mysql> select *   from my_insert2 where id=(select max(id) from my_insert2);
+----+-----------+----------------------------------+
| id | name      | password                         |
+----+-----------+----------------------------------+
|  3 | 李连杰    | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+

5. 현재 insert 문을 기반으로 last_insert_id() 함수를 사용하여 마지막 레코드를 볼 수 있습니다

mysql> select * from my_insert2 order by id desc limit 1;
+----+-----------+----------------------------------+
| id | name      | password                         |
+----+-----------+----------------------------------+
|  3 | 李连杰    | *6BB4837EB74329105EE4568DDA7DC67 |
+----+-----------+----------------------------------+

【 관련 권장 사항:

mysql 비디오 튜토리얼

위 내용은 mysql에서 마지막 레코드를 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.