MySQL의 기본적인 쿼리들에 대해서 치팅 시트를 만들어보자! ㅎㅎ
INSERT INTO users (name, age) VALUES ("이름1", 20);
SELECT * from users;
SELECT name,age from users;
SELECT * from users WHERE id = 1;
SELECT * FROM users ORDER BY name ASC; // 오름차순(1-9, a-z, 과거-미래)
SELECT * FROM users ORDER BY name DESC; // 내림차순(9-1, z-a, 미래-과거)
SELECT * from users LIMIT 10; // 첫번째행부터 10개
SELECT * from users LIMIT 10, 10; // 11번째 행부터 10개
SELECT * from users GROUP BY age; // 나이별로 데이터가 조회된다.
SELECT * from users GROUP BY age HAVING COUNT(age) = 1;
-> 전체 user데이터중에서 자신의 나이가 유일한 사람이 조회됨
UPDATE users SET age = 21 WHERE id = 1;
DELETE FROM users WHERE age = 20;
-> users테이블에서 age가 20인 데이터 모두 삭제
SHOW DATABASES;
USE {db명};
ALTER DATABASE {db명} CHARACTER SET=utf8
ALTER DATABASE {dbaud} COLLATE=utf8
...
CREATE TABLE users
(
ID INT,
name VARCHAR(255)
)
DELETE TABLE `users`;
DELETE TABLE `users` WHERE `age` = 20;
DROP TABLE `users`;
DROP TABLE if exists `users`;
ALTER TABLE `users` DROP FOREIGN KEY `address`;
ALTER TABLE `users` ADD `updated_at` timestamp AFTER `created_at`;
-> users테이블의 created_at컬럼 앞에 updated_at이라는 컬럼 추가
ALTER TABLE `users` CHANGE COLUMN `name` `username` VARCHAR(255) NOT NULL DEFAULT '' AFTER `age`;
-> users테이블의 name컬럼을 username으로 변경
ALTER TABLE `users` MODIFY `name` LONGTEXT;
-> users 테이블의 name 컬럼을 LONGTEXT
타입으로 수정
CREATE USER '{유저 ID}'@'{호스트}' IDENTIFIED BY '{비밀번호}';
CREATE USER 'hello'@'%' identified BY 'world';
GRANT {all privileges, select, insert 등등} ON {DB이름}.{테이블} TO '{사용자}'@'{호스트}';
GRANT all privileges ON test.* TO 'hello'@'%';
FLUSH PRIVILEGES;
DROP USER '{유저 ID}'@'{호스트}';
-- 또는
DELETE FROM USER WHERE USER='{유저 ID}'@'{호스트}';