728x90
반응형
1. 활용 예시
1) 예시
조건 1. 가장 오래된 회원 5명을 찾으세요.
SELECT *
from users order by created_at asc limit 5; |
2) 예시
조건 1. 회원가입을 가장 많이 하는 요일은??
SELECT dayname( created_at ) as day , count(*) as cnt
from users group by day order by cnt desc; |
3) 예시
조건 1. 회원가입은 했지만, 사진은 한번도 올리지 않은 유령회원들의 데이터만 가져오시오.
SELECT *
from users u left join photos p on u.id = p.user_id where p.id is null; |
4) 예시
조건 1. 가장 유명한(좋아요가 가장 많은) 사진을 찾아서,
조건 2. 그 사진을 올린 유저이름과 사진의 url주소, 좋아요 수를 가져오세요.
SELECT p.id, p.image_url , count(l.id) as cnt, u.username
from photos p left join likes l on p.id = l.photo_id join users u on p.user_id = u.id group by p.id order by cnt desc limit 1; |
4) 예시
조건 1. 가장 많이 사용된 해시태그의 이름은 무엇일까요.
조건 2. 해시태그의 이름과 사용횟수를 나타내세요.
SELECT t.id, t.tag_name, count(*) as cnt
from photo_tags pt join tags t on pt.tag_id = t.id group by t.id order by cnt desc; |
4) 예시
조건 1. 포토아이디 72번인 사진의,
조건 2. 사진 URL주소, 작성자이름, 좋아요 수를 가져오시오.
select p.id, p.image_url, u.username, count(*) as like_cnt
from photos p join users u on p.user_id = u.id join likes l on p.id = l.photo_id where p.id = 72; |
5) 예시
조건 1. 여러분의 아이디는 유저아이디 1 입니다.
조건 2. 포토아이디 72번에, 댓글을 달것입니다.
조건 3. 댓글다는 SQL 작성.
insert into comments (comment_text, photo_id, user_id)
values ('사진 너무 멋집니다~', 72, 1 ); |
6) 예시
조건 1. 포토아이디 72번의 댓글 리스트를 가져오는 sql 개발
조건 2. 댓글 내용, 댓글 작성자 이름, 댓글 작성 날짜 가 나오도록 개발
조건 3. 댓글리스트는 최신순으로 나오도록 개발.
SELECT c.id, c.comment_text, u.username, c.created_at
from comments c join users u on c.user_id = u.id where photo_id = 72 order by c.created_at desc; |
728x90
반응형
'DB > 실습' 카테고리의 다른 글
13. [ DB ] MySQL 확장 : 스키마(Schema) 활용 - 어플 / 카페 (1) | 2024.12.06 |
---|---|
11. [ DB ] MySQL 문법 : JOIN의 활용 예시 (0) | 2024.12.05 |
9. [ DB ] MySQL 숫자열 함수 : 정의와 활용 예시 (0) | 2024.11.30 |
8. [ DB ] MySQL 문자열 함수 : 정의와 활용 예시 (2) (2) | 2024.11.29 |
7. [ DB ] MySQL 문자열 함수 : 정의와 활용 예시 (1) (2) | 2024.11.29 |