Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

id가 가장 큰 삭제 작업을 수행하는 MySQL 쿼리는 무엇입니까?

<시간/>

하나의 ID만 삭제하면 되므로 LIMIT 1과 함께 ORDER BY DESC 명령을 사용할 수 있습니다.

먼저 테이블을 생성하겠습니다 -

mysql> create table DemoTable
(
   UserId int,
   UserName varchar(20)
);
Query OK, 0 rows affected (0.57 sec)

삽입 명령을 사용하여 테이블에 레코드 삽입 -

mysql> insert into DemoTable values(100,'John');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(234,'Mike');
Query OK, 1 row affected (0.28 sec)
mysql> insert into DemoTable values(145,'Sam');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable values(278,'Carol');
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable values(289,'David');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values(277,'Bob');
Query OK, 1 row affected (0.14 sec)

select 명령을 사용하여 테이블의 레코드 표시 -

mysql> select *from DemoTable;

이것은 다음과 같은 출력을 생성합니다 -

+--------+----------+
| UserId | UserName |
+--------+----------+
| 100    | John     |
| 234    | Mike     |
| 145    | Sam      |
| 278    | Carol    |
| 289    | David    |
| 277    | Bob      |
+--------+----------+
6 rows in set (0.00 sec)

다음은 id가 가장 큰 삭제를 수행하는 쿼리입니다 -

mysql> delete from DemoTable order by UserId DESC limit 1;
Query OK, 1 row affected (0.15 sec)

가장 큰 id가 삭제되었는지 확인하기 위해 테이블의 모든 레코드를 표시해 보겠습니다. 여기, id 289가 성공적으로 삭제되었습니다 -

mysql> select *from DemoTable;

이것은 다음과 같은 출력을 생성합니다 -

+--------+----------+
| UserId | UserName |
+--------+----------+
| 100    | John     |
| 234    | Mike     |
| 145    | Sam      |
| 278    | Carol    |
| 277    | Bob      |
+--------+----------+
5 rows in set (0.00 sec)