MySQL은 웹 애플리케이션 및 기타 데이터 기반 애플리케이션에 사용되는 가장 널리 사용되는 관계형 데이터베이스 관리 시스템(RDBMS) 중 하나입니다. 초보자이거나 MySQL 기술을 익히려는 사람이라면 기본 쿼리를 이해하는 것이 필수적입니다. 이 블로그에서는 데이터베이스 작업, 테이블 조작 및 데이터 관리에 사용할 수 있는 몇 가지 기본적인 MySQL 쿼리를 안내합니다.
먼저 테이블과 데이터를 저장할 데이터베이스가 필요합니다. 데이터베이스 생성은 간단합니다.
CREATE DATABASE my_database;
데이터베이스를 생성한 후 다음 쿼리를 사용하여 선택하세요.
USE my_database;
데이터베이스를 삭제해야 하는 경우 다음 명령을 사용하세요.
DROP DATABASE my_database;
테이블은 데이터가 저장되는 곳입니다. 다음과 같이 특정 열이 포함된 테이블을 만들 수 있습니다.
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), email VARCHAR(100), age INT );
선택한 데이터베이스의 모든 테이블을 보려면:
SHOW TABLES;
테이블의 구조를 알고 싶다면 다음과 같이 설명할 수 있습니다.
DESCRIBE users;
열을 추가하거나 변경하여 테이블을 수정해야 하는 경우:
ALTER TABLE users ADD phone VARCHAR(15);
ALTER TABLE users MODIFY age TINYINT;
테이블을 삭제하려면:
DROP TABLE users;
테이블에 데이터를 추가하려면:
INSERT INTO users (name, email, age) VALUES ('John Doe', '[email protected]', 25);
테이블에서 데이터 검색:
SELECT name, email FROM users WHERE age > 20;
테이블에서 모든 데이터를 검색하려면:
SELECT * FROM users;
테이블의 데이터를 업데이트하려면:
UPDATE users SET age = 26 WHERE name = 'John Doe';
테이블에서 데이터를 삭제하려면:
DELETE FROM users WHERE name = 'John Doe';
WHERE 절을 사용하여 특정 조건에 따라 레코드를 필터링합니다.
SELECT * FROM users WHERE age > 20;
AND 또는 OR를 사용하여 여러 조건 결합:
SELECT * FROM users WHERE age > 20 AND name = 'John Doe';
값 목록을 기준으로 데이터 선택:
SELECT * FROM users WHERE age IN (20, 25, 30);
범위 내에서 데이터 필터링:
SELECT * FROM users WHERE age BETWEEN 20 AND 30;
LIKE 절을 사용하여 패턴 검색:
SELECT * FROM users WHERE name LIKE 'J%';
NULL 또는 NOT NULL 값으로 레코드 필터링:
SELECT * FROM users WHERE email IS NULL;
행 수 계산:
SELECT COUNT(*) FROM users;
열의 합계를 계산합니다.
SELECT SUM(age) FROM users;
열의 평균값 찾기:
SELECT AVG(age) FROM users;
열의 최대값 또는 최소값 찾기:
SELECT MAX(age) FROM users;
SELECT MIN(age) FROM users;
하나 이상의 열을 기준으로 데이터 그룹화:
SELECT age, COUNT(*) FROM users GROUP BY age;
그룹화된 데이터 필터링:
SELECT age, COUNT(*) FROM users GROUP BY age HAVING COUNT(*) > 1;
데이터를 오름차순 또는 내림차순으로 정렬:
SELECT * FROM users ORDER BY age DESC;
다음 두 테이블 모두에서 조건이 충족되는 여러 테이블에서 데이터를 가져옵니다.
SELECT users.name, orders.order_date FROM users INNER JOIN orders ON users.id = orders.user_id;
왼쪽 테이블에서 데이터를 가져오고 오른쪽 테이블에서 일치하는 행을 가져옵니다.
SELECT users.name, orders.order_date FROM users LEFT JOIN orders ON users.id = orders.user_id;
오른쪽 테이블에서 데이터를 가져오고 왼쪽 테이블에서 일치하는 행을 가져옵니다.
SELECT users.name, orders.order_date FROM users RIGHT JOIN orders ON users.id = orders.user_id;
하위 쿼리를 사용하여 결과 필터링:
SELECT name FROM users WHERE id = (SELECT user_id FROM orders WHERE order_id = 1);
하위 쿼리를 사용하여 값 계산:
SELECT name, (SELECT COUNT(*) FROM orders WHERE users.id = orders.user_id) AS order_count FROM users;
쿼리를 기반으로 가상 테이블을 생성합니다.
CREATE VIEW user_orders AS SELECT users.name, orders.order_date FROM users INNER JOIN orders ON users.id = orders.user_id;
보기 삭제:
DROP VIEW user_orders;
색인을 생성하여 쿼리 성능을 향상시키세요.
CREATE INDEX idx_name ON users (name);
색인 제거:
DROP INDEX idx_name ON users;
관계형 데이터베이스를 사용하는 모든 사람에게는 이러한 기본 MySQL 쿼리를 이해하는 것이 필수적입니다. 데이터를 관리하든, 쿼리를 최적화하든, 데이터 무결성을 보장하든 이러한 명령은 MySQL 기술의 기초를 형성합니다. 이를 마스터하면 대부분의 데이터베이스 관련 작업을 쉽게 처리할 수 있는 준비를 갖추게 됩니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3