데이터베이스의 데이터를 불러올 땐, 꼭 필요한 정보만 찾아와야 합니다. 그럴 때 사용 되는 SELECT, FROM, WHERE 그리고 WHERE 절에 함께 쓰이는 비교연산자 (=, > , < ) 그리고 논리연산자 (AND, BETWEEN, IN, LIKE, OR 등) 을 알아보겠습니다.
MySQL 공식 사이트에서 다운받은 sakila 데이터베이스로 실습하겠습니다. 해당 데이터베이스에는 "영화"테이블, "배우"테이블, "영화와 배우간의 관계"테이블, "상점" 테이블 등이 포함된 DVD 대여점을 모델링한 데이터베이스입니다.
USE sakila;
SELECT * FROM customer;
SELECT 불러올 컬럼 또는 *
FROM 데이터베이스명.컬럼
;
SHOW CREATE TABLE 테이블명;
복사붙혀넣기 하면 아래 내용이 나옵니다.
CREATE TABLE `customer` (
`customer_id` smallint unsigned NOT NULL AUTO_INCREMENT,
`store_id` tinyint unsigned NOT NULL,
`first_name` varchar(45) NOT NULL,
`last_name` varchar(45) NOT NULL,
`email` varchar(50) DEFAULT NULL,
`address_id` smallint unsigned NOT NULL,
`active` tinyint(1) NOT NULL DEFAULT '1',
`create_date` datetime NOT NULL,
`last_update` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`customer_id`),
KEY `idx_fk_store_id` (`store_id`),
KEY `idx_fk_address_id` (`address_id`),
KEY `idx_last_name` (`last_name`),
CONSTRAINT `fk_customer_address` FOREIGN KEY (`address_id`) REFERENCES `address` (`address_id`) ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT `fk_customer_store` FOREIGN KEY (`store_id`) REFERENCES `store` (`store_id`) ON DELETE RESTRICT ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=600 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci