풀기 전 :처음이다 보니 익숙하지 않았다.어떤 걸 기준으로 join 할 것인지도 처음이라 이해되지 않았다. 두 테이블의 공통된 컬럼이 무엇인지 이해하자!이 문제를 통해서 정리할 수 있는 내용은 다음과 같다. 이렇게 연속해서 사용한다.위 문장의 뜻은 R.CREATED_D
풀기 전:내림 차순 정렬이 순간 헷갈렸고, 컬럼이 리스트일때 어떻게 코드를 짜야할지 당황했다.풀고 난 후 정리:OPTIONS가 리스트인 칼럼이라고 할때 네비게이션 이라는 단어를 포함하는 것만 포함한다.ORDER BY desc 가 아니다. 순서에 유의 하자!
어려운 내용은 아니고 원하는 내용을 출력하고 특정한 칼럼 기준으로 정렬하는 방법을 익히기 좋은 문제였다.
풀기 전:limit 를 사용해서 출력하는 개수를 제한하는 방법을 터득할 수 있는 문제인것같다.풀고 난 후:limit: 출력하는 개수를 제한 하기 가능ORDER by : 숫자가 작은 것 부터 큰 것으로 정렬된다. 즉 날짜에 사용한다면 숫자가 작은 더 이전에 들어온 동물이
어떠한 A라는 기준으로 정렬하고 A가 같을 경우는 B기준으로 정렬하는 방법을 배울 수 있었던 문제였다.결론:order by A,B 라고 써주면 A기준으로 정렬,A가 같을경우 B기준으로 정렬
특정 칼럼이 어떤 상태일 경우에만 출력하는 where 절을 활용하는 문제였다.알게된것:where 절에서 상태가 X라는 상태일때는 "X"이라고 해주어야 한다.Sick이라고 했었는데 틀렸었다.
단순히 특정 칼럼을 출력하고 order by 로 정렬할 수 있는지 물어보는 문제이다.
풀기 전:특정 컬럼이 특정 타입일 경우만 출력하면 되므로 그렇게 어렵지 않은 문제였다.
풀기 전:NULL과 NOT NULL을 어떻게 이용할 수 있는지 묻는 문제이다.알게 된 것:컬럼이 NULL이 아닐 때 혹은 NULL 일때is Not NULL 혹은 is NULL로 사용해야 한다.
풀기 전:count에 대한 사용법을 몰라서 count 의 예제를 찾아보았다..알게 된 것:count의 예의 대해서 확실히 알게 되었다.위 경우 USERS 라는 칼럼이 생기고 그 칼럼의 값에 총 숫자가 들어가는 예이다.
풀기 전:어떤 단어를 포함하고 있거나 특정 문자열을 포함하는 것을 찾을 수 있는 방법이 있다.그것은 like와 %를 적절히 이용하는 것이다. %의 의미는 0개이상의 문자를 의미한다.따라서 '강원도' 로 시작하는 문자열을 찾기 위해서는 로 작성해야 한다.
풀기 전: 이 문제는 1)칼럼의 이름 바꾸기 2)MAX를 활용할 줄 아는지 물어보는 문제이다.위 sql문은 PRICE가 max값인 것을 PRODUCT에 찾아서 MAX_PRICE라는 칼럼에 표시한다. 이런 뜻으로 작성하였다.
풀기 전:먼저 NULL일 경우 특정 행위를 할 때 어떻게 처리하는지 알아야 했다.이렇게 하는 방법이 제일 먼저 생각이 났으나, db를 수정하는 방법이 아니기에 찾을 수 밖에 없었다. 그 해답은 IFNULL이였다.IFNULL(특정 칼럼,'N')-->특정 칼럼이 null이
풀기 전:간단한 문제였다.테이블에서 특정 칼럼이 null 인 것을 효율적으로 찾으려면 을 활용하면 된다는 것을 떠올리자.정답 코드
풀기 전:사전에 알아야 할 것이 있었다.을 한다면 table에서 조건에 맞는 행의 수를 출력한다는 것이다.특정 년도를 가진 칼럼을 추출하고 싶다면 를 활용할 수도 있고 로 더 쉽게 추출할 수도 있다.
1)A기준으로 정렬하고 A가 같으면 B 기준으로 정렬할때라고 깔끔하게 쓸수 있다.2)지정된 형식으로 날짜 형식을 바꾸기DATE_FORMAT 함수를 사용해서 형식을 바꿀수 있다. 날짜 형식을 가진 A 칼럼을 2021-08-12 의 형식으로 바꾸고 그 칼럼을 B라는 이름으
특정 칼럼의 값이 NULL일 경우 특정한 단어로 출력을 하고 싶다.라고 한다면 아래와 같이 사용을 한다.위의 의미는 AGE와 HHH를 출력을 하는데 HHH는 칼럼 A의 값이 NULL일 때 hello를 대신 그 칸에 넣어주는 것을 의미한다.이를 바탕으로 아래와 같이 문제
단순하다.두 가지 기준으로 정렬하려면 와 같이 작성하면 끝난다.
원하는 형식으로 날짜의 형식을 바꾸려면아래와 같이 입력을 해주면 된다 . 위의 코드를 따르면 2021-08-20 형식으로 나올 것이다. 또한 특정 연도의 BOOK을 찾으려면 아래와 같이 사용한다. 위를 바탕으로 이 문제를 풀어보면 로 풀기 가능하다
이 문제를 풀려면 avg 함수에 대해서 알아야 한다.avg 함수는 특정 칼럼의 평균을 구할수 있는데 아래와 같이 쓸 수 있다.table로부터 A칼럼의 평균을 구해서 가져온다.또한 ROUND함수를 알아야 한다.ROUND함수는 특정 값을 반올림하여 출력할 수 있게 해준다
그냥 모든 정보를 출력하면 되는 문제이기 때문에 딱히 알아야 할 것이 없다.
각각의 테이블에서 특정 칼럼을 기준으로 JOIN을 하고 문제를 풀어야 한다.first_table의 칼럼 A와 second_Table의 칼럼 B를 기준으로 Table을 join 하여서 새로운 테이블을 만들고 그것을 바탕으로 원하는 데이터를 뽑아낼 수 있다.
가장 최근에 들어온 물건을 구하려면 어떻게 해야 할까?등록된 날짜 중 가장 최근을 구하면 될 것이다.또 그것은 숫자로 따지면 가장 큰 수이다.따라서 날짜가 가장 큰 것을 추출해 내면 된다.

distinct() 함수를 사용하면 중복된 값을 제거하고 출력하여 준다.예를 들면를 사용한다면 위와 같이 중복되는 내용이 있으면 그 내용을 제거하고 출력하여 준다.
count문을 잘 활용하면 된다.사실 count 문을 이전 문제에서 많이 다루어서 생략하도록 하겠다.
Group by 는 특정 열을 기준으로 데이터를 그룹화 할 수 있다. 이러면 동일한 값을 갖는 행들이 같은 그룹에 묶인다.이 과정에서 집계함수(max,count 등)을 사용할수 있으며특정 칼럼의 고유한 값을 확인하거나 그룹 내에서 통계를 생성하는 데 사용될 수 있다.그
이름에 'XX'로 시작하는 또는 'XX'로 끝나는 또는 'XX'를 포함하는 것을 찾을 때는 like문을 활용할 수 있다.예를 들면 where name like '%xx%'식으로 사용하면 XX를 포함하는 것이고 '%xx'이면 xx로 끝나는 것,'xx%'면 xx로 시작하는
특정 칼럼의 값이 NULL일 경우 특정한 단어로 출력을 하고 싶다.라고 한다면아래와 같이 사용을 한다.위의 의미는 AGE와 HHH를 출력을 하는데 HHH는 칼럼 A의 값이 NULL일 때 hello를 대신 그 칸에 넣어주는 것을 의미한다.이를 바탕으로 아래와 같이 문제의
지정된 형식으로 날짜 형식을 바꾸기DATE_FORMAT 함수를 사용해서 형식을 바꿀수 있다.SELECT DATE_FORMAT(A, '%Y-%m-%d') AS B from table;날짜 형식을 가진 A 칼럼을 2021-08-12 의 형식으로 바꾸고 그 칼럼을 B라는 이
특정 칼럼의 값이 최댓값이 되는 것의 정보를 얻으려면 두 가지 방법이 있다.하나는 where 절에 sub 쿼리로 where A=(select MAX(A) from TABLE 과 같이 작성하는 것과order by 와 limit 1을 조합해서 그냥 뽑을 수도 있다.1번 방

특정 칼럼이 어떤 조건을 만족시킬때 출력값을 다르게 하고 싶다면 아래와 같은 구문을 이용할 수 있다.A라는 칼럼이 X 글자를 포함하고 있다면 O ,X를 출력하는데 칼럼이름은 B로 해서 출력한다는 의미이다.위와 같이 like % or %로 하면 조건에 만족하더라도 X로
Group by 는 특정 열을 기준으로 데이터를 그룹화 할 수 있다. 이러면 동일한 값을 갖는 행들이 같은 그룹에 묶인다.이 과정에서 집계함수(max,count 등)을 사용할수 있으며특정 칼럼의 고유한 값을 확인하거나 그룹 내에서 통계를 생성하는 데 사용될 수 있다.그
SUBSTRING(A, 1, 2)A 칼럼의 첫번째 글자 부터 2개의 글자를 추출합니다.LEFT(A,2)A칼럼의 왼쪽부터 2개의 글자를 추출합니다.count(\*)이미 group 화된 테이블에서 count함수를 적용할 수 있습니다.group by로는 우리가 만든 칼럼 S
으로 날짜 형식의 출력 제어!
오른쪽 테이블의 외래키가 Null 이라도 왼쪽 테이블의 칼럼을 모두 출력한다. (왼쪽 테이블: SELECT FROM A LEFT JOIN B 에서 A가 왼쪽 테이블, B가 오른쪽 테이블) 왼쪽 테이블의 외래키가 Null 이라도 오른쪽 테이블의 칼럼을 모두 출력한다.