전체 글(204)
-
[사전캠프] SQL 연습문제 - 5
문제 : 아래의 테이블을 참고해 문제 해결을 위한 SQL 문을 작성하자.idnamestart_dateend_dateaws_cost1일조2023-01-012023-01-07300002꿈꾸는이조2023-03-152023-03-22500003보람삼조2023-11-202023-11-30800004사조참치2022-07-012022-07-3075000[team_projects(프로젝트) 테이블]Q1. AWS 예산(aws_cost)이 40000 이상 들어간 프로젝트들의 이름을 선택하는 쿼리 작성SELECT nameFROM team_projectsWHERE aws_cost >= 40000 'team_projects' 테이블에서 'aws_cost' 가 40000 이상인 레코드들에서 'name' 컬럼을 조회환 결과를 출..
2024.08.20 -
[사전캠프] TIL 작성 - 24.08.20(화)
1. 학습 오늘은 데이터 연산시 제대로 된 값을 갖지 않는 데이터에 대한 처리에 대해 배웠다. 배운 내용은 해당 내용을 MySQL 에서 자동으로 '0' 으로 여기고 대체해 연산에서 제외한다거나 'IF' 또는 'CASE' 를 사용해 해당 값을 특정 값으로 변경해 연상에 사용되게 하는 등의 방법이었다. 특히 NULL 값을 다루는 부분이 굉장히 유익했는데 NULL 값을 WHERE 절에서 조건으로 제외하는 방식을 사용하거나 'COALESCE' 을 사용해 NULL 값을 제외하는 것이 굉장히 유용하다 느껴졌다. 2. 과제 SQL 및 알고리즘 코드카타를 하루 루틴처럼 진행한 후, 개인 과제로 SQL 연습 문제를 풀어보았다. 그 동안 SQL 코드카타와 강의의 실습 문제를 열심히한 결과인지 처음 SQL 문제를 접했을 ..
2024.08.20 -
[SQL] 데이터 병합 - COALESCE
해당 함수는 NULL 값을 대체하기 위해 사용한다 배워 찾아보니 해당 목적이 주가 아니어서 이렇게 따로 정리하게 되었다. 물론 NULL 값 대체의 기능을 가지고 있지만 본디 주 목적은 두 컬럼을 합치는 기능을 하는 함수라고 한다. 1. 기본 문법SELECT COALESCE(병합컬럼명1, 병합컬럼명2) 별명, // 방법 - 1 COALESCE(값1, 값2) 별명 // 방법 - 2FROM 테이블명 해당 함수의 작동 기준은 NULL 이다. 두 컬럼을 지정하면 아래와 같은 결과를 보인다.두 컬럼 값이 모두 NULL 일 경우 : NULL 이 병합컬럼 값이 됨두 컬럼 중 하나의 컬럼 값이 NULL 인 경우 : NULL 아닌 쪽의 컬럼 값이 병합컬럼 값이 됨두 컬럼 값이 모두 NULL ..
2024.08.20 -
[사전캠프] TIL 작성 - 24.08.19(월)
1. 학습 오늘은 SQL 의 JOIN 에 대한 개념과 사용법을 학습했다. 강의에는 다양한 JOIN 이 있다고만 하여 따로 찾아보고 이 내용을 다외워야 하나 걱정했으나 다행이 이해에 도움이 되는 이미지를 찾아서 해당 내용을 토대로 각 JOIN 을 사용하면 어떤 결과가 발생하는지 머리속으로 그리며 이해할 수 있었다. 2. 과제 이제는 하루의 루틴이 된 알고리즘 및 SQL 코드카타를 수행하고, SQL 강의에서 학습한 내용을 활용해 4주차 (수) 과제인 '이용자의 포인트 조회하기' 를 해결해보았다. 이미 강의에서도 한 번 비슷한 내용의 실습을 한 뒤라 그런지 쉽게 해결할 수 있었다. ※ 참고 : 나는 TIL 작성 방식을 내가 학습하며 정리한 다른 게시글들과 하이퍼링크를 거는 방식으로 작성하였다. 학습한 내용..
2024.08.19 -
[사전캠프] 이용자의 포인트 조회하기
문제 : 두 테이블에서 각 이용자의 아이디, 이메일, 총 포인트를 조회하는 쿼리 작성조건 : 결과 조회시 이용자의 아이디, 이메일, 총 포인트에 대한 컬럼이 조회되어야 하며, 획득한 포인트가 없는 이용자에 대한 정보도 포함하여 출력해야 한다. 마지막으로 출력 결과는 총 포인트 기준으로 내림차순 정렬되어야 한다.SELECT a.user_id, a.email, SUM(b.point) pointFROM users a LEFT JOIN point_users b ON a.user_id = b.user_idGROUP BY 1ORDER BY point DESC 대상 테이블은 'users(이용자 정보)', 'point_users(사용자 포인트 획득 정보)' 테이블이며, 'user_id(이용자 아이디)', 'email..
2024.08.19 -
[SQL] 테이블 합치기 - JOIN
테이블은 목적에 따라 여러 속성을 가지고 있다. 하지만 현재 필요로 하는 속성이 다른 테이블에 있는 경우가 더러 있다. 이럴 때 두 테이블의 공통 속성을 기준으로 테이블의 데이터를 합친 결과 데이터를 조회할 수 있다. 0. JOIN 의 종류 나의 경우 JOIN 에 대해 이해할 떄 위와 같은 그림을 통해 이해하였다. 그저 외우기보다 그림을 보면 각 상황에 결과 테이블이 어떻게 생성될지 생각을 반복했다. 종류가 굉장히 많아 보이지만 일단 'LEFT JOIN' 과 'RIGHT JOIN' 중에 하나만 이해하면 반대되는 개념도 쉽게 이해 가능했다(나의 경우에는 LEFT JOIN 을 기준으로 학습했다). 그림을 통해 자주 사용하는 2가지 JOIN 을 정리했다.(INNER) JOIN : 'JOIN' 또는 INNER..
2024.08.19