23.03.30 SQL ๊ณผ์ œ

๊น€๋ฏผ์„ฑยท2023๋…„ 3์›” 30์ผ
1

SQL ๋ฌธ๋ฒ• ์ต์ˆ™ํ•ด์ง€๊ธฐ

๐Ÿ“ SQL ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ๋ฌธ๋ฒ•์€ ๋Œ€๋ฌธ์ž๋กœ ์ ๋Š”๋‹ค.
๐Ÿ“ ์ฟผ๋ฆฌ๋ฌธ ๋์— ;๋ฅผ ์ ๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

ํ˜„์žฌ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ํ…Œ์ด๋ธ” ์ •๋ณด ๋ณด๊ธฐ
SHOW tables;

user ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ ๋ณด๊ธฐ
DESC user;

user ํ…Œ์ด๋ธ”์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ์ปฌ๋Ÿผ์„ ํฌํ•จํ•œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธ
SELECT name FROM user;

user ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€
INSERT INTO user(name,email) VALUES('kimms', 'alstjd1@naver.com');

user ํ…Œ์ด๋ธ”์—์„œ ํŠน์ • ์กฐ๊ฑด์„ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๊ธฐ
SELECT name FROM user WHERE NOT name = 'luckykim';

content์˜ title๊ณผ user์˜ name์„ ์ฐพ๊ธฐ
SELECT title, name FROM content LEFT JOIN user on content.id = user.id;

ํ…Œ์ด๋ธ”์—์„œ Group ๋ณ„๋กœ ๋‚˜๋ˆ  ์ฐพ๊ธฐ
SELECT user.name AS name, COUNT(content.id) AS ContentCount FROM content RIGHT JOIN user ON content.userId = user.id GROUP By user.name;

0๊ฐœ์˜ ๋Œ“๊ธ€