혼공학습단 SQL 2주차 기본 미션 & 선택 미션
안녕하세요!
2번째 주가 밝고 일본여행을 준비하느라
기강이 다 빠져버린... 현지입니다...
mbti를 맹신하는편은 아니지만 극 p인 저라도
혼공단은 못참죠 ..ㅎㅎ
.
.
.
.
.

2주차 기본 미션!
P.138의 확인문제 2번을 풀고 인증하기!
2주차 선택 미션!
데이터 입력, 삭제하는 기본형식 작성하기!
먼저 기본미션부터 해보겠습니다!
저번시간에 배웠던 SELECT / FROM / WHERE의 설명은 생략하도록 하겠습니다.
▼ 여기서 확인해주세요!
.
.
.
더욱 심화된 SELECT문에는 정렬, 중복제거, 개수제한 등 여러 기능을 "절"을 통해 사용할 수 있습니다!
ORDER BY
|
결과 정렬
|
LIMIT
|
결과의 개수 제한
|
DISTINCT
|
중복 데이터 제거
|
GROUP BY
|
지정한 열의 데이터 중 같은 데이터를 묶어서 결과 추출
|
HAVING
|
WHERE과 같은 개념. GROUP BY와 함께 사용
|
- ORDER BY
만약 market_db 데이터베이스 안에 member 테이블을 이용하여
데뷔 날짜가 빠른 순서대로 출력하고 싶습니다.
EX)
이 문을 작성하면 데뷔날짜가 빠른 순서대로 정렬되겠죠?

ORDER BY는 결과의 값이나 개수에 대해서는 영향을 끼치지 않지만, 결과가 출력되는 순서를 조절합니다.
ORDER BY 열_이름 ASC or DESC를 이용하여 오름차순 / 내림차순 또한 결정할 수 있습니다.
ASC
|
오름차순
|
DESC
|
내림차순
|
만약 내림차순으로 정렬하고 싶다면?

이런식으로 작성할 수 있습니다.
WHERE을 사용하여 조건을 달 수도 있습니다.
member 테이블에 키가 164이상인 컬럼만 출력하되 내림차순으로, 데뷔 날짜는 빠른 순으로 정렬해보겠습니다.

아름답게 정렬되었습니다..ㅎ
다만 where을 이용하여 조건을 추가하고 싶다면
ORDER BY 전에 사용해주세요!
2. LIMIT
LIMIT은 출력의 개수를 제한하는 역할을 수행합니다.
EX)

LIMIT 숫자 형식으로 입력하면 원하는 숫자만큼의 앞의 것만 조회할 수 있습니다.
하지만 제한을 하는 경우에도 이렇게 무턱대고 3개! 만 조회하는 경우는 잘 없겠죠?
LIMIT는 ORDER BY 등과 함께 사용됩니다!
EX)
member 테이블에서 mem_name, debut_date만 조회하면서 데뷔날짜가 가장 빠른 앞 3건만 노출하게 되는 쿼리문입니다.
그럼 결과는?

짜안...
LIMIT의 형식은
"LIMIT 시작, 개수" 입니다.
LIMIT 3만 쓰게 된다면 LIMIT 0, 3과 같은 의미입니다!
0번째부터 3건이라는 소리겠죠??
위 예시와 같이 3, 2를 입력하면
3번째부터 2건! 노출하게 됩니다~
3. DISTINCT
DISTINCT는 조회된 결과에서 중복된 데이터를 1개만 남깁니다.
데이터베이스라는 것 자체가 정말 방대한 양의 데이터들이 모여있기때문에
중복 데이터가 많다면 복잡하겠죠 ㅠㅠ?

중복되는 데이터 없이 싸그리 정리할겁니다 !
이럴때! "SELECT 열_이름" 형식 사이에 DISTINCT만 추가해주면?

깔끔합니다 ㅠㅠ
.
.
.
.
.
그럼 이제 우린
138페이지의 문제를 풀 수 있습니다!

기본 미션 성공!
족장님 저 사실 미림 대표 명필이거든요...?
유난히 영어는 잘 안쓰이더라구요..
한글 진짜 잘써요 저.... 저완전 김석봉임....ㅠㅠ
.
.
.
선택미션으로 달려가봅시다!
데이터 입력 / 삭제하는 방법을 알아볼건데요!
우리는 여기서 두가지를 알고 가야합니다~
바로 INSERT와 DELETE입니다!
- INSERT
INSERT의 기본 형식은 다음과 같습니다!
데이터베이스 테이블에 데이터를 삽입하는 방법입니다.
예를 들면...

이 토이스토리 테이블에 버즈를 추가해보겠습니다!

우리 문자는 작은따옴표로 감싸주는거 잊지 말자구요 ...ㅎㅎ
바로 버즈가 추가되었네요!
굳이 순서대로 쓸 필요없이 원하는 순서로 써줘도 상관은 없지만
그래도 이게 제일 편하겠죠?
근데 가만보니 toy_id는 입력말고 자동으로 1씩 증가하면 참 좋을텐데....그쵸?
방법이 다 ... 다...있습니다...
바로 AUTO_INCREMENT!
다시 새로운 테이블을 만들면서
toy_id를 INT로 잡아주면서 AUTO_INCREMENT를 설정해줄겁니다.
id니까 중복되면 안되겠죠? PRIMARY_KEY도 설정해줍시다.
이 테이블에 데이터 값을 넣어줄건데요!
toy_id는 이제 자동으로 채워질것이니 NULL을 작성해주시면 됩니다.
NULL만 써줘도 자동으로...?

우리 21세기의 과학기술을 무시하지 말자구요...ㅎㅎ
2. DELETE
데이터를 삭제하고 싶다면 이 DELETE문을 사용하면 됩니다!
그거아시죠... 만드는건 지이인짜 오래걸리는데 무너뜨리는데는 한순간인거...
그것처럼 삭제도 정말 간단해요,,,
우리 바로위에 보이는 저 사진!
슬링키 친구를 지워보겠습니다!
WHERE 절이 생략된다면 전체 다지워지니까 우리 불상사 겪지 맙시다.ㅠㅠ

슬링키 안녕 .....ㅠㅠㅠ
삭제도 참 쉽죠 ㅠㅠ
우리 이렇게 2주차 기본미션 & 선택미션 모두 끝마쳤습니다!
이 글 하나 쓰는게 이렇게 정성이 많이들고 시간도 오래걸리는지
참 갓생사는거같아서 기분이 좋네요 후후 ★
족장님 숙제검사 힘내세요!
#혼공S #혼공 #혼공학습단