공부/SQL(33)
-
SQL 기본 JOIN
JOIN JOIN JOIN 공부하자. 두 개 이상의 테이블을 서로 연결하여 데이터를 검색할 때 사용하는 방법 두개의 테이블을 마치 하나의 테이블인 것 처럼 보여준다. JOIN 의 종류 1) INNER JOIN 기준 테이블과 조인할 테이블 모두에 조인 컬럼 데이터가 존재해야 조회가 된다. 2) NATURAL JOIN 두개 이상의 테이블에서 공통된 속성(컬럼)을 기준으로 두 테이블을 결합하는 조인의 종류이며, 이때 공통된 속성은 자동으로 매칭된다. 따로 명시적으로 조인할 컬럼을 지정할 필요 X 예를들어 다음과 같은 두 개의 테이블이 있다고 가정 Table1: Employee +----+-------+------+ | id | name | age | +----+-------+------+ | 1 | John ..
2023.03.23 -
SQL 기본 - GROUP BY, HAVING Phrase
1) Group By는 말 그대로 데이터를 그룹별로 묶을 수 잇도록 해주는 절이다. Group 뒤에 수단의 전치사인 by가 붙었기 때문에, Group by 뒤에는 그룹핑의 기준이되는 컬럼이 오게 된다. 컬럼은 하나가 될 수도 있고, 그 이상이 될 수도 있다. 2)집계 함수 데이터를 그룹별로 나누면 그룹별로 집계 데이터를 도출하는 것이 가능해진다. 예를 들어 유투브 이용자 수를 국가별로 그룹핑한다고 했을 때, 나라별로 얼마만큼의 이용자가 있는지 집계 해볼 수 있다. 더보기 집계함수의 예 COUNT(*) : 전체 ROW를 COUNT하여 반환 COUNT(컬럼) : 컬럼값이 NULL인 ROW를 제외하고 COUNT하여 반환 COUNT(DISTINCT COLUMN) 컬럼 값이 NULL이 아닌 ROW에서 중복을 제거..
2023.03.20 -
SQL 기본 - 논리연산자와 우선순위
SQL 에서는 AND, OR, NOT 과 같은 논리 연산자를 사용하여 여러 조건들을 결합할 수 있다. 이때, 논리 연산자의 우선순위가 적용되는데, 이는 산술 연산자의 우선순위와 유사하다. 더보기 논리 연산자의 우선순위 OR = 20 AND (name = 'Alice' OR name = 'Bob') 이 경우 논리연산자 AND가 우선이므로 age 가 20살 이상이거나 20과 같은 경우가 우선이며, name이 Alice이거나 Bob인 경우의 행을 반환한다.
2023.03.20 -
SQL 기본 - WHERE PHRASE
WHERE 조건절은 SQL 쿼리에서 조건을 지정하는 절이고 지정한 조건에 부합하는 행만 반환하거나 수정 또는 삭제할 수 있다. WHERE 절에서 사용할 수 있는 연산자는 다음과 같습니다. = : 왼쪽 피연산자와 오른쪽 피연산자가 같으면 참입니다. 또는 != : 왼쪽 피연산자와 오른쪽 피연산자가 같지 않으면 참입니다. : 왼쪽 피연산자가 오른쪽 피연산자보다 크면 참입니다. = : 왼쪽 피연산자가 오른쪽 피연산자보다 크거나 같으면 참입니다. BETWEEN : 특정 범위에 속하는 값을 찾을 때 사용합니다. BETWEEN 다음에는 최소값과 최대값을 지정합니다. 예를 들어, WHERE age BETWEEN 20 AND 30은 age가 20 이상 30..
2023.03.20 -
SQL #3 - CASE Function
CASE 함수는 성격이 같기는 하지만, 표현 방식이 함수라기 보다는 구문에 가깝다고 할 수 있다고한다. 문장으로는 '~이면, ~이고, ~이면, ~이다' 라는 식으로 표현되는 구문이며, 필요에 따라 각 CASE를 여러 개로 늘릴 수 있다. CASE SUBWAY_LINE WHEN '1' THEN 'BLUE' WHEN '2' THEN 'GREEN' WHEN '3' THEN 'ORANGE' [ELSE 'GRAY'] END EX) SELECT name, CASE WHEN age = 20 AND age = 30 AND age < 40 THEN '30s' ELSE 'Over 40' END AS age_group FR..
2023.03.20 -
SQL기본 - 암시적 형변환과 명시적 형변환
변환함수 DB에서 데이터 유형에 대한 형변환을 할 수 있는 방법은 두가지 1. 명시적 형변환 : 변환 함수를 사용하여 데이터 유형 변환을 명시적으로 나타냄 2. 암시적 형변환 : 데이터베이스가 내부적으로 알아서 데이터 유형을 변환함. 예를들어 아래와 같은 테이블이 있다고 가정해보자 CREATE TABLE sample_table ( id INTEGER, name VARCHAR(20), age INTEGER, height FLOAT ); INSERT INTO sample_table VALUES (1, 'John', 25, 175.2), (2, 'Jane', 30, 160.5), (3, 'Mike', 35, 182.0); 이 테이블에서, age와 height는 각각 INTEGER와 FLOAT 데이터 타입을 가..
2023.03.20