목록Programing/Datababse (33)
T_era
아래와 같은 lol_feedbacks (LOL 피드백 테이블)이 있습니다.iduser_namesatisfaction_scorefeedback_date1르탄이52023-03-012배캠이42023-03-023구구이32023-03-014이션이52023-03-035구구이42023-03-04 25.lol_feedbacks 테이블에서 만족도 점수(satisfaction_score)에 따라 피드백을 내림차순으로 정렬하는 쿼리를 작성해주세요!더보기select*from lol_feedbacksorder by satisfacion_score desc 26.lol_feedbacks 테이블에서 각 유저별로 최신 피드백을 찾는 쿼리를 작성해주세요!더보기selectuser_name,max(feedback_date) as "최신"..
아래와 같은 lol_users(LOL 유저 테이블)이 있습니다.idnameregionratingjoin_date1르탄이한국13002019-06-152배캠이미국15002020-09-013구구이한국14002021-01-074이션이미국13502019-11-15 21.lol_users 테이블에서 각 유저의 레이팅(rating) 순위를 계산하는 쿼리를 작성해주세요! 전체 지역(region) 기준이고 순위는 레이팅이 높을수록 높아야해요. (e.g. rating 1400 유저의 순위 > rating 1350 유저의 순위)더보기select*,rank() over (partition by region order by rating) as rankingfrom lol_users 22.lol_users 테이블에서 가장 늦게 ..
공부를 한 결과를 점검하기 위해 팀 프로젝트를 수행해야 합니다! 이제, 아래와 같은 team_projects(프로젝트) 테이블이 있습니다. idnamestart_dateend_dateaws_cost1일조2023-01-012023-01-07300002꿈꾸는이조2023-03-152023-03-22500003보람삼조2023-11-202023-11-30800004사조참치2022-07-012022-07-3075000 17.team_projects 테이블에서 AWS 예산(aws_cost)이 40000 이상 들어간 프로젝트들의 이름을 선택하는 쿼리를 작성해주세요!더보기selectnamefrom team_projectswhere aws_cost => 4000018.team_projects 테이블에서 2022년에 시작된..
아래와 같은 sparta_students(학생) 테이블이 있습니다.idnametrackgradeenrollment_year1르탄이Node.jsA20232배캠이SpringB20223구구이UnityC20214이션이Node.jsB2022 13.sparta_students 테이블에서 모든 학생의 이름(name)과 트랙(track)을 선택하는 쿼리를 작성해주세요!더보기selectname, trackfrom sparta_students14.sparta_students 테이블에서 Unity 트랙 소속이 아닌 학생들을 선택하는 쿼리를 작성해주세요!더보기select*from sparta_studentswhere track'Unity' 15.sparta_students 테이블에서 입학년도(enrollment_year)가 ..
이제 상품 주문이 들어왔으니 어떤 고객에게 어떤 주문이 들어왔는지를 파악할 수 있는 orders(주문) 테이블이 아래에 있습니다.idcustomer_idproduct_idamountshipping_feeorder_date171913500002023-11-01213121100002023-11-0236541200002023-11-054100832250002023-11-05535611150002023-11-09 9.orders 테이블에서 주문 수량(amount)이 2개 이상인 주문을 진행한 소비자의 ID(customer_id)만 선택하는 쿼리를 작성해주세요!더보기select customer_idfrom orderswhere amount >= 2 10.orders 테이블에서 2023년 11월 2일 이후에 주문된..
여러분이 구매하고 싶은 상품들의 정보가 있는 products(상품) 테이블이 아래에 있습니다.idproduct_namepricecategory1맥북 프로1200컴퓨터2다이슨 청소기300생활가전3갤럭시탭600컴퓨터4드롱기 커피머신200주방가전 5.products 테이블에서 제품 이름(product_name)과 가격(price)만을 선택하는 쿼리를 작성해주세요.더보기select product_name, pricefrom product 6.products 테이블에서 제품 이름에 '프로'가 포함된 모든 제품을 선택하는 쿼리를 작성해주세요.더보기select *from productwhere product_name like '%프로%' 7.products 테이블에서 제품 이름이 '갤'로 시작하는 모든 제품을 선택하..
아래와 같은 sparta_employees(직원) 테이블이 있습니다.idnamepositionsalaryhire_date1르탄이개발자300002022-05-012배캠이PM400002021-09-253구구이파트장350002023-06-014이션이팀장500002021-07-09 1.sparta_employees 테이블에서 모든 직원의 이름(name)과 직급(position)을 선택하는 쿼리를 작성해주세요.더보기select name, positionfrom sparta_employees2.sparta_employees 테이블에서 중복 없이 모든 직급(position)을 선택하는 쿼리를 작성해주세요.더보기select distinct positionfrom sparta_employees3.sparta_employ..
값의 제외 SQL에서는 avg, sum과 같은 연산을 할 때 연산할 수 없는 값이 있으면 0으로 간주한다 만약 데이터에 null이 있다면 where age is not null을 사용해 null을 제외할 수 있다 값의 변경 조건문을 사용해도 되지만 coalesce을 사용해 값을 변경해줄 수 있다 ex) coalesce(b.age, 20) "null 제거" // null을 20으로 대체한다 조회한 값이 예상 외의 값이 있을 때는 조건문을 이용하여 조정해줄 필요가 있다 pivot table - 2개 이상의 기준으로 데이터를 집계할 때 보기 쉽게 배열해주는 것 - 2차원 배열을 생각하면 된다 - 사용할 때 반드시 max를 사용해 컬럼조회를 한다 ex)nation별로 shop의 이용자 연령대 pivot tab..
SUBQUERY - 여러번의 연산이 필요할 때 - 조건문에 연산결과를 사용할 때 - 조건에 QUERY결과를 사용하고 싶을때 ex) select로 원하는 컬럼을 불러오고 해당 컬럼으로 연산하는 법 select height/weight as 'BMI' from ( select height, weight from human ) body JOIN 여러 테이블에서 데이터를 불러오는 명령어 - 공통컬럼(index)를 이용해 데이터를 가져온다 *Left Join 한쪽은 모든 테이블정보를 가져오고 한쪽은 겹치는 테이블 정보만 가져온다 *Inner Join 양쪽이 겹치는 테이블 정보만 가져온다 *** 여기서 겹치는 테이블이란 index가 둘다 있는 것을 말함 ex) join 사용법 from human left join..
IF : 컬럼에 조건을 넣어 출력 ex) SELECT name, IF(nation = 'Korean', '한국인', '외국인') FROM human // nation이 korean이면 한국인 아니면 외국인으로 출력 CASE WHEN THEN ELSE END : case로 조건문 시작 when으로 조건 작성 then으로 부합하는 경우 작성 else 조건이 모두 안맞을 경우 작성 end로 case 종료 ex) 30대 20대 10대로 분류하기 select case when age >= 30 then '30대' when age >= 20 then '20대' when age >= 10 then '10대' else '기타' end or select case when age between 10 and 19 then ..