본문 바로가기

아옳옳의 코딩공부/아옳이의 데이터베이스 MySQL

2021-05-24 MySQL 데이터베이스 데이터검색및 그루핑

반응형

ORDER BY 절

오름 차순과 내림차순 관련된 절 

(기본적으로 오름차순 으로 정렬) 

오름차순

@ 내림차순 정렬 ( DESC를 넣음 )

내림차순

@ 정렬기준을 2개로 설정하고 정렬 

키로 내림차순 후 이름으로 오름 차순

여기서 ASC는 오름 차순 정렬이다. 기본이 오름차순이지만 이렇게 정렬기준을 2개를 할때는 구분하기 위한 용도로 사용이된다. 

DISTINCT 키워드

@ 중복 지역 하나만 출력 

LIMIT 절 

먼저 오름 차순을 해준뒤에 LIMIT을 통해서 사용 할수 있다 오름 차순을 위한 ORDER BY 

@ 가입일이 오래된 사람 5명만 출력

@ 응용 시작 지점 과 개수를 정해서 출력 예 ) 두번째로 오래된 사람부터 2명까지 출력 

@한번더 응용 가장 최근에 가입한 사람 순서대로 1번부터 2명 

CREATE TABLE ...SELECT문

테이블을 복사하는 형식이라고 생각하면된다. 

작성 방법  CREATE TABLE 새로운테이블이름 (SELECT 복사할열 FROM 기존테이블) 

 

@다른 데이터베이스테이블에서 여기로 복사해오기 

@ 지정한 일부 열만 복사

 

@ 지정한 일부 열 복사동시에 이름(별칭) 변경 해주기  (as '원하는 이름 ') 

 

@기본키와 외래키 등의 제약조건은 복사 되지 않는다 !!

GROUP BY절

소계 분류에 대한 합계를 구할때 사용함 

@같은 아이디끼리 그룹으로 묶은뒤 구매갯수를 합쳐서 출력해주기 

@별칭사용 및 구매 총액 구해보기

@계산해본 데이터 따로 저장을 원할때 

계산 해본 데이터 따로 저장하기 

집계함수

함수  설명
AVG( ) 평균을 구한다. 
MIN( ) 최솟값을 구한다.
MAX( ) 최대값을 구한다
COUNT( ) 행의 개수를 센다
CONNT(DISTINCT) 행의 개수를 센다 ( 중복은 1개만 인정) 
STDEV( ) 표준편차를 구한다.( 수학적인 곳아님 안씀)
VAR_SAMP( ) 분산을 구함 ( 수학적인 곳아님 안씀) 

@평균 구매갯수 출력 

@가장 키가큰 사람과 가장 키가 작은 사람 이름과 키 출력

@핸드폰을 보유한 사람만 출력

HAVING절

@아이디별 총 구매액 구하기 

@HAVING절 사용하여 총구매액 1000이상인 회뭔만 출력 

HAVING절은 GROUP BY를 사용할때 WHERE절 대신 사용된다 생각하면 된다. 

마지막요약 문서 작성시 팁

SELECT 열 이름 

FROM 테이블 이름 

WHERE 조건 

GROUP BY 묶어줄 그룹 

HAVING (GROUP BY 사용시 WHERE절 대신 사용 ) 

ORDER BY 정렬 

LIMIT 보여줄 조건 

이 순서대로 작성 해주면 된다 .


교재에 없는 내용 

1992년도만 가져오고 싶다!

사인업 데이에서 데이만 추출( 15~ 31 사이 )  

 

날자간의 차이까지 출력

현재 날짜가 나오는 

대략적인 나이 계산 하기 

+

가입일로부터 시간이 얼만큼 지난지 확인 

200일 전
200일후

and와 or 같이 쓸때는 and 우선순위라 ( ) 처서 먼저 처리해야함 

행의 갯수를 알려주는 COUNT 

위 응용하여 성별이 몇개인지 알아내기 

 

 

앞부분 짤라서 지역 확인하기

문자열 추출하는 subString

substring(주소에서 첫번째 문자에서 2개를 추출해 와라)  

별칭 ( 별명 붙여주기 ) 

별칭을 붙여 오름 차순으로 정렬 해주었다 . 

 

계속 거슬리던 널 없애기 


마지막 퀴즈 푼거

반응형