쿼리(Query) : 질의를 의미함. 데이터베이스에 명령을 내리는 것.
- Select 컬럼명 From 테이블명; - 컬럼명에 *를 하면 모든 컬럼을 다 가져온다
Where 절 : 쿼리문으로 가져올 데이터에 조건을 걸어준다.
- 같지 않음 -> !=
- 범위 -> between 'a' and 'b' : a이상 b미만
- 포함 -> 'a' in (1,3) : a가 1이나 3인 값
- 패턴 -> 'a' like '%1' : a가 1로 끝나는 값
- where email like 'a%': email 필드값이 a로 시작하는 모든 데이터
- where email like '%a' email 필드값이 a로 끝나는 모든 데이터
- where email like '%co%' email 필드값에 co를 포함하는 모든 데이터
- where email like 'a%o' email 필드값이 a로 시작하고 o로 끝나는 모든 데이터
- 일부 데이터만 가져오기 -> limit 10; : 상위 10개만 가져옴
- 중복 데이터는 제외하고 가져오기 -> distinct(a) : a 컬럼 중복제거
- 몇 개인지 숫자 세보기 -> count(*) : 테이블에 있는 로우 갯수 가져옴
Group by 절 : 동일한 범주를 갖는 데이터를 하나로 묶어서, 범주별 통계를 내주는 것.
- 최대 -> max(a) : a의 최댓값
- 최소 -> min(a) : a의 최솟값
- 평균 -> avg(a) : a의 평균값 - 반올림 하고 싶을 땐 round(avg(컬럼명), 자릿수) -> 평균값을 자릿수까지 반올림한다. 0이나 생략 시 그냥 반올림.
- 합계 -> sum(a) : a의 컬럼값 모두 더해준 값
Order by : 정렬
- 오름차순 -> 생략하거나 ASC : 적은값부터 높은 값 순
- 내림차순 -> DESC : 높은값부터 적은값 순
- 문자열도 가능
💡 쿼리가 실행되는 순서 : from -> group by -> select -> order by
Alias : 별칭 기능
- 쿼리가 길어지면 헷갈릴 수 있어 별칭기능을 사용함.
- select * from orders o where o.course_title = '앱개발 종합반';