인사말
안녕하세요! 오늘도 공부를 한 내용을 포스팅하러 왔습니다!
매일 매일 머리에 열을 느끼며 공부를 하니까
살아있다는 기분도 들고, 해낸 자신을 보니까 뿌듯한 마음이 커지네요!
너무 행복하고 보람찬 요즘입니다!
딴말이지만, 감기 조심하세요! 기온이 롤러코스터를 타고 있습니다.
문제1. 테이블에서 주문 수량이 2개 이상인 주문을 진행한 소비자의 ID만 선택하는 쿼리를 작성해주세요!
select customer_id from orders where amount >= 2;
select 칼럼명 from 파일명 where 조건이 들어가는 열 >= 2;
2개 이상이기 때문에 기호 (>=)를 활용하여 where를 완성시켜주었습니다!
이제 select, from과 where 문장은 익숙하게 다루게 됐습니다!
문제2. 테이블에서 2023년 11월 2일 이후에 주문된 주문 수량이 2개 이상인 주문을 선택하는 쿼리를 작성해주세요!
select customer_id from orders where amount >= 2 and order_date >= '2023-11-02';
select 컬럼명 from 파일명 where 조건이 들어가는 열1 >= 2 and 조건이 들어가는 열2 >= '기간';
이번에도 큰 문제점은 없었습니다!
문제2에 있었던 문장을 보며 적절한 기호를 삽입하여 원하는 결과값을 표시하였습니다.
문제3. 테이블에서 주문 수량이 3개 미만이면서 배송비가 15000원보다 비싼 주문을 선택하는 쿼리를 작성해주세요!
select customer_id from orders where amount < 3 and shipping_fee >= 15000;
select 컬럼명 from 파일명 where 조건이 들어갈 열1 < 3 and 조건이 들어갈 열2 >= 15000;
이번에도 문제3의 문장을 따라서 수식을 만들어내면 원하는 결과값을 표시할 수 있었습니다.
문제4. 테이블에서 배송비가 높은 금액 순으로 정렬하는 쿼리를 작성해주세요!
select shipping_fee from orders order by shipping_fee desc;
select 컬럼명 from 파일명 order by 조건이 들어갈 열 desc;
"높은 금액 순"이라는 새로운 개념이 들어와서 당황했습니다!
아직 내일배움캠프에서 제공해주신 SQL 강의를 듣지 못한 상태기 때문에
팀원분들께 여쭤보며 답을 찾아낼 수 있었습니다.
"order by ~ desc;"가 큰 값 순서대로 정렬하는 명령어더라구요
"order by ~ asc;"는 작은 값 순서대로 정렬하는 명령어입니다.
이렇게 정렬하여 값을 나타내는 방법을 배워가는 3번째 퀘스트였습니다!
오늘의 마지막 공부인 4번째 퀘스트 포스팅, 시작합니다!
문제1. 테이블에서 모든 학생의 이름과 트랙을 선택하는 쿼리를 작성해주세요!
select name, track from study;
select 컬럼명1, 컬럼명2 from 파일명;
문제2. 테이블에서 Unity 트랙 소속이 아닌 학생들을 선택하는 쿼리를 작성해주세요!
select name from study where track not like 'Unity';
select 컬럼명 from 파일명 where 조건이 들어갈 열 not like 'Unity';
여기서부터 팀원들과의 코드가 달랐습니다!
저는 "Unity"가 아니기만 하면 되니까 "not like"를 활용하여 코드를 완성시켰습니다.
팀원분들은
팀원1 select * from `study` where track <> 'Unity';
팀원2 select * from sparta_students where not track='Unity' ;
팀원3 select * from practice p where not track= 'unity';
이렇게 코드를 완성시키셨더라구요
여기서 "not = <>"라는 것을 새롭게 배우게 되었습니다!
사람마다 완성시킬 수 있는 코드가 다를 수 있다는 걸 알게 되어서 너무 재밌었습니다!😲
문제3. 테이블에서 입학년도가 2021년인 학생과 2023년인 학생을 선택하는 쿼리를 작성해주세요!
select name from study where enrollment_year not like 2022;
select 컬럼명 from 파일명 where 조건이 들어가는 열 not like 2022;
이번에도 저는 "not like"를 활용하여 코드를 완성시켰습니다!
다른 항목들을 보았을 때, 공통적으로 2022가 들어가는 것을 확인하고 결과값을 표시하였습니다.
팀원1 select * from `study` where enrollment_year in(2021, 2023);
팀원2 select * from sparta_students where enrollment_year in (2021, 2023) ;
팀원3 select * from practice p where enrollment_year in (2021, 2023);
"IN" 을 활용하여 쓸 수 있다는 것을 배웠습니다!
문제4. 테이블에서 Node.js 트랙 소속이고 학점이 'A'인 학생의 입학년도를 선택하는 쿼리를 작성해주세요!
select name, enrollment_year from study where track = 'Node.js' and grade = 'A';
select 컬럼명1, 컬럼명2 from 파일명 where 조건이 들어갈 열1 = 'Node.js' and 조건이 들어갈 열2 = 'A';
마무리
오늘은 이렇게 두 개의 SQL 퀘스트를 완료하였습니다!
첫날과는 다르게 손에 좀 익은 거 같고, 머리에 개념이 자리 잡은 느낌이네요!
다음에 또 배워 올 배민경이 되도록 하겠습니다!
감사합니다!
<새로 배운 것들>
1. "not = <>"
2. "In" : 특정 값
3. "order by ~ desc, asc" : 정렬
정리 끝!
'내일배움캠프 TIL > SQL 공부' 카테고리의 다른 글
내일배움캠프 퀘스트 7일차_ 7)과 8) (0) | 2024.11.19 |
---|---|
내일배움캠프 퀘스트 6일차_ 5)와 6) (0) | 2024.11.18 |
내일배움캠프 퀘스트 4일차_ 2) 이제 좀 벌었으니 flex 한 번 해볼까요?! (1) | 2024.11.14 |
내일배움캠프 퀘스트 3일차_ 1) 돈을 벌기 위해 일을 합시다! (1) | 2024.11.14 |
내일배움캠프 퀘스트 3일차_SQL 기초 명령어 (3) | 2024.11.13 |