본문 바로가기

MySQL

MySQL - index, view, group by

# INDEX


인덱스는 테이블의 기초정보를 가져다줍니다. 테이블을 모두 읽지 않기 때문에 잘 모르는 테이블을 수정할 때 유용하게 사용할 수 있을 것으로 보입니다. 테이블 레코드 추가/변경 시 인덱스도 자동으로 수정됩니다. db가 큰 경우 index를 잘 이용하면 시간적 측면에서 적절한 타협을 볼 수 있을 것 같습니다. 

위 코드는 index 생성, 추가, 확인, 제거 입니다. 

show index 로 테이블의 인덱스를 보면 여러 가지 값이 보이는데 자세한 의미는 tcpschool을 참고해 주세요. http://tcpschool.com/mysql/mysql_index_create

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

# VIEW


view 를 이용하면서 궁금해서 몇 가지 시도를 해보았는데 좀 위험한(?) 구문인 것 같습니다. 실제 데이터를 포함하지 않는다고 하는데, 그 의미를 잘 모르겠으나 mysql 8.0을 이용 중이고 view를 이용해서 만들어진 테이블과 원래의 테이블과 연동되어 데이터가 추가/삭제가 됩니다. 즉 alter과 delete 구문이 view 테이블에도 적용이 되는데 이 결과가 서로 연동이 됩니다. 위 이슈는 실행을 확인하고 적었습니다.

이용가치를 보면 as 구문에서 원래 필드의 이름을 은닉시킬 수 있다는 점을 꼽을 수 있겠습니다. 데이터 핸들링은 원래 테이블을 이용하는것처럼 다뤄주시면 됩니다.

차례대로 view 생성, 변경, 확인, 제거 입니다. 

# GROUP BY


group by 는 중복 데이터가 있을 경우 한 번에 목록화시킬 수 있습니다. group by의 조건절은 having으로 적어줍니다. 그리고 ordering이 가능합니다. 다음은 실행결과입니다.

 

반응형

'MySQL' 카테고리의 다른 글

MySQL - rollup 사용  (0) 2021.09.25
MySQL - rownum 구현  (0) 2021.09.22
MySQL - join, union, sub-query  (0) 2021.08.18
MySQL - foreign key  (0) 2021.08.14
MySQL - constraint  (0) 2021.08.14