SQL 5

Oracle (3) - 순위처리를 해보자 (RANK, DENSE_RANK, ROW_NUMBER)

쿼리를 작업할 때 성적 및 순위 처리할 일들이 있습니다. 해당 데이터를 RANK 함수를 이용하여 순위처리 하는 방법을 정리하려고 합니다. 예시 테이블 STNT_NO GRADE KOREAN MATH ENGLISH TOTAL 2017111 3 100 90 80 270 2018112 2 90 90 90 270 2019113 3 50 50 60 160 2020114 1 60 70 80 210 RANK, DENSE_RANK, ROW_NUMBER SELECT STNT_NO , TOTAL , RANK() OVER (ORDER BY TOTAL DESC) AS RANK , DENSE_RANK() OVER (ORDER BY TOTAL DESC) AS DENSE_RANK , ROW_NUMBER() OVER (ORDER BY..

컴퓨터/Oracle 2023.11.06

MySQL (17) - Join에서 중복을 제거하는 방법

SQL을 사용하다 보면 Join을 해서 테이블을 자주 합치게 됩니다. 데이터를 합칠 때 중복 값이 나올 수가 있습니다. DB를 관리할 때 보통 Join을 할때 대상이 유니크한 값을 가져야 합니다. 하지만 DB 관리를 잘못한 경우 중복이 발생할 수 있습니다. 이번에는 중복을 제거하는 방법에 대하여 알아보겠습니다. 다양한 방법들이 있으나 상황에 따라 사용하면 됩니다. 예시 테이블 T01 (사번, 이름, 직급, 휴대폰번호) STAF_NO STAF_NM STAF_LEVEL PHONE_NUM 1000 홍길동 팀장 010-1234-1234 1001 김철수 대리 010-1234-1235 1002 김영희 대리 010-1234-1236 T02 (사번, 직급, 근속일자, 월급) STAF_NO STAF_LEVEL STAF_..

컴퓨터/MySQL 2023.10.19

MySQL (16) - 뷰(View)에 대하여 알아보자

혼자서 데이터베이스를 작업하는 경우 모든 권한을 마음대로 컨트롤할 수 있습니다. 외주업체 등 여러 명이 데이터를 활용할 때 사용자에게 꼭 필요한 정보만 접근해야 할 때가 있습니다. 이때 필요한 게 View입니다. View 뷰는 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위하여 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블입니다. 저장장치에 물리적으로 존재하지는 않지만, 사용자에게 있는 것처럼 간주하고 사용됩니다. 이를 통해 데이터 보정작업 등 임시적인 용도로 사용됩니다. 또한 Join 된 데이터를 뷰를 통하여 간단하게 뽑을 수 있습니다. View를 사용할 때 장단점 View를 사용할 때 장단점은 다음과 같습니다. 장점 특정 사용자에게 테이블 전체가 아닌 필요한 데이터만 보여줄 수 있습니..

컴퓨터/MySQL 2023.10.03

MySQL (2) - 정보를 탐색해보자 (Select)

MySQL에서 다른 문법도 엄청나게 많지만 가장 주요하다고 생각하는 Select문에 대하여 알아보도록 하겠습니다 Select란? SQL에서 가장 기본적인 기능 중 하나는 해당 데이터를 찾아보는 것입니다. 해당 테이블에서 모든 정보를 찾을 수도 있지만 조건을 줄여서 상세한 정보도 찾을 수 있습니다. 이번에는 간단하게 Select를 이용하여 여러 가지 정보를 찾아보는 시간을 가져보도록 하겠습니다. ※mytable이 있다고 가정하고 계속 진행하겠습니다 ※가칭으로 table의 값을 구성하였습니다. 처음의 값을 기점으로 어떤 변화가 있는지 보시면 될 것 같습니다. select * from mytable; class name price score 1 minsu 1500 30 1 minji 3400 23 2 mins..

컴퓨터/MySQL 2021.12.07

MySQL (1) - DBMS는 무엇인가

개요 저는 처음에 DBMS라는 개념에 대하여 많이 얕보았습니다. 일반적인 규모에서는 엑셀과의 연동 정도면 충분하게 정리가 끝납니다. 하지만 사이트가 커지고, 규모가 커지면 엑셀 등의 파일 정도 DBMS는 여러 가지 한계를 가지게 됩니다. 이러한 이유를 통해 이번에는 우리가 DBMS가 왜 중요한지를 배워야 하는 이유를 한번 적어보려고 합니다. *이번 글은 개인적인 의견이 포함할 수 있습니다 DB와 DBMS 위에서도 DBMS를 언급하였으나 DBMS를 알기 위해 먼저 DB를 알아야 합니다 우선 Data는 정보들을 이야기합니다. DB는 Database의 약자로 통합적으로 관리되는 데이터들의 집합체들을 말합니다. 하지만 데이터만 있으면 어떻게 수많은 정보들만 있지 알 수 없습니다. 그렇기 위해 우리는 DBMS를 ..

컴퓨터/MySQL 2021.09.19