Database

Database/SQL

[SQL] SQL SELECT 실행 순서

SQL 문법의 순서와 실행 순서는 서로 다르므로 이 점에 주의해야 한다. SQL 문법의 순서 SELECT: 쿼리의 결과로 얻고자 하는 열을 선택한다. FROM: 데이터를 가져올 테이블을 지정한다. WHERE: 가져올 데이터를 필터링하는 조건을 지정한다. GROUP BY: 그룹화할 열을 지정한다. HAVING: 그룹화된 결과를 필터링하는 조건을 지정한다. ORDER BY: 결과를 정렬할 열을 지정한다. SQL 실행 순서 FROM: 데이터를 가져올 테이블을 지정한다. JOIN: 테이블을 결합한다. WHERE: 가져올 데이터를 필터링한다. GROUP BY: 그룹화한다. HAVING: 그룹화된 결과를 필터링한다. SELECT: 가져올 데이터를 지정한다. DISTINCT: 중복을 제거한다. ORDER BY: 결과..

Database/SQL

[MySQL] 서브쿼리(SUBQUERY)

SUBQUERY 란? SUBQUERY(서브쿼리): 쿼리문을 작성할 때, 그 안에 포함되는 다른 쿼리문. 실행되는 쿼리에 중첩으로 위치해, 정보를 전달한다. SELECT [컬럼] FROM [테이블] WHERE [컬럼] IN ( SELECT [컬럼] FROM [테이블] WHERE [조건] ); 서브쿼리를 포함하고 있는 쿼리를 외부쿼리(outer query)라고 부르며, 서브쿼리는(inner query)라고도 부른다. 서브쿼리는 위의 예시처럼 소괄호()로 묶어서 표현한다. 서브쿼리는 메인쿼리의 컬럼을 사용할 수 있지만, 메인 쿼리는 서브 쿼리의 컬럼을 사용할 수 없다. 서브쿼리의 결과는 개별 값이나 레코드 리스트이다. 그리고 서브쿼리의 결과를 하나의 컬럼으로 사용할 수 있다. 서브쿼리 사용이 가능 한 곳 My..

Database/SQL

[MySQL] 그룹화 해주는 Group by

Group by 란? Group by: 데이터를 조회할 때 그룹으로 묶어서 조회해주는 쿼리 SELECT [컬럼] FROM [테이블] GROUP BY [그룹화할 컬럼]; 정의만 봐서는 Group by가 무엇인지 이해가 잘 되지 않을 것이다. 예시를 통해서 알아보자. 아래 사진 처럼 구성된 테이블에서 age컬럼의 데이터만 뽑아보자. 이번에는 위에 사용했던 쿼리문에 group by절을 붙여서 사용해보자. SELECT age FROM user GROUP BY age; 차이점이 보이는가? 중복 값이 제거되었다. age 값을 기준으로 그룹을 만들어 버렸기 때문에 중복된 데이터가 제거가 된 것이다. 그렇다면 중복을 제거해주는 distinct를 쓴 것과 똑같은 결과 값을 가지게 된다. 그럼 Group by 말고 간단하..

지구우중
'Database' 카테고리의 글 목록