3.6. 일반적인 쿼리 예제
3.6.1. 컬럼에 대한 최대 값
3.6.2. 특정 컬럼에 대한 최대 값을 가지고 있는 열 (Row)
3.6.3. 그룹별 컬럼 최대값
3.6.4. 특정 필드에 대한 그룹 방식 (Group-wise) 최대 값을 가지고 있는 열 (Row)
3.6.5. 사용자 정의 변수 사용하기
3.6.6. Foreign 키 사용하기
3.6.7. Two 키 사용하기
3.6.8. 일별 방문자 수 계산하기
3.6.9. AUTO_INCREMENT 사용하기
여기에서는 MySQL에서 일반적으로 발생하는 문제점들을 해결할 수 있는 예제들을 보여 주기로 한다.
어떤 예제들은 특정 판매자 (dealer)의 상품 (item number) 값을 가지고 있도록 테이블 shop 을 사용한다. 각 판매자는 상품 별로 정해진 단일 가격을 가지고 있고, (article, dealer)는 레코드에 대한 프라이머리 키(primary key)라고 가정한다.
명령어 라인에서 mysql을 구동 시키고 데이터 베이스를 선택한다:
shell> mysql your-database-name
아래의 명령어를 사용해서 예제 테이블을 생성하고 데이터를 그 안에 넣는다:
CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL,
dealer CHAR(20) DEFAULT '' NOT NULL,
price DOUBLE(16,2) DEFAULT '0.00' NOT NULL,
PRIMARY KEY(article, dealer));
INSERT INTO shop VALUES
(1,'A',3.45),(1,'B',3.99),(2,'A',10.99),(3,'B',1.45),
(3,'C',1.69),(3,'D',1.25),(4,'D',19.95);
명령문을 입력하면 테이블은 아래의 내용을 갖게 될 것이다:
SELECT * FROM shop;
+---------+--------+-------+
| article | dealer | price |
+---------+--------+-------+
| 0001 | A | 3.45 |
| 0001 | B | 3.99 |
| 0002 | A | 10.99 |
| 0003 | B | 1.45 |
| 0003 | C | 1.69 |
| 0003 | D | 1.25 |
| 0004 | D | 19.95 |
+---------+--------+-------+