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

단일 MySQL 쿼리에서 최대값과 최소값을 얻으려면 어떻게 해야 합니까?

<시간/>

단일 쿼리에서 최대값과 최소값을 얻으려면 집계 함수 min() 및 max()를 사용하십시오. 먼저 테이블을 생성해 보겠습니다.

mysql> create table DemoTable
(
   FirstValue int,
   SecondValue int
);
Query OK, 0 rows affected (0.66 sec)

다음은 삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하는 쿼리입니다.

mysql> insert into DemoTable values(10,30);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(30,60);
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values(100,500);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(50,80);
Query OK, 1 row affected (0.18 sec)

다음은 select 명령을 사용하여 테이블의 레코드를 표시하는 쿼리입니다.

mysql> select *from DemoTable;

그러면 다음과 같은 출력이 생성됩니다.

+------------+-------------+
| FirstValue | SecondValue |
+------------+-------------+
|         10 |          30 |
|         30 |          60 |
|        100 |         500 |
|         50 |          80 |
+------------+-------------+
4 rows in set (0.00 sec)

다음은 단일 쿼리에서 최대값과 최소값을 가져오는 쿼리입니다.

mysql> select min(FirstValue),min(SecondValue),max(FirstValue),max(SecondValue) from DemoTable;

그러면 다음과 같은 출력이 생성됩니다.

+-----------------+------------------+-----------------+------------------+
| min(FirstValue) | min(SecondValue) | max(FirstValue) | max(SecondValue) |
+-----------------+------------------+-----------------+------------------+
|              10 |               30 |             100 |              500 |
+-----------------+------------------+-----------------+------------------+
1 row in set (0.00 sec)