본문 바로가기

반응형

별걸다하는 IT/데이터베이스 Database

반응형
(43)
[SQL] 오라클 over절에 대해 알아보자 - 개념 및 사용법 정리 [데이터베이스 완전정복 목차] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 SQL구문 중에서 OVER절에 대해 다뤄보려고 해요~ OVER절이란 무엇인가? 누적이라던가, 순위, 퍼센테이지, 평균, 총합 등 데이터를 통계나 집계할 때 단일함수랑 집계함수랑 같이 올 수 없기 때문에, 서브쿼리를 사용하게 되는데요 특히 다수의 집계결과가 필요할 때 여러 서브쿼리와 그룹바이로 인해 쿼리가 지저분해져요. 이를 마법처럼 간단하게 만들어주는 절이 OVER절입니다. OVER절 유용한 상황 샘플 테이블 EMPLOYEES 에서 직원연봉과 직원전체평균연봉, 그리고 직원전체연봉총합을 알려주는 통계를 작성한다고 가정해봅시다. 표는 요런식으로 나와야겠죠?? 아직 우리는 OVER를 배우지 않았으니~~ 우리가 알고 있는 기본적인 SE..
[SQL] GROUPING 완벽히 이해하고 사용하기, NULL값 '총합'으로 변경 [데이터베이스 완전정복 목차] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 그룹바이 롤업에 이어서 GROUPING과 GROUPING_ID를 알아보려해요. 일단 GROUPING부터~~~ ※ 사전에 숙지되어 있어야 할 부분! GROUP BY와 ROLLUP에 대한 개념이 없으면 학습에 어려움이 있을 수 있어요! 아래 3개의 포스팅은 숙지하고 옵시당! ■ CASE WHEN 절 2020.12.12 - [별걸다하는 IT/데이터베이스 Database] - [디비 SQL 오라클] SQL에도 IF분기문이 있다? CASE WHEN THEN 문법 알아보기, CASE구문 사용법 ■ GROUP BY와 HAVING 2020.07.22 - [별걸다하는 IT/데이터베이스 Database] - [오라클, MySQL] 컬럼을 그룹지어..
[SQL] 현재 날짜 시간 정보 알려주는 sysdate 함수, 포맷 자유자재 변경하기 [데이터베이스 SQL 완전정복 목차] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 정말정말 자주 쓰이는 sysdate 함수에 대해 작성해보려고 해요. [목차] 1. sysdate 함수 사용법 2. sysdate 숫자와 산술연산 3. sysdate 날짜타입끼리 산술연산 4. 원하는 포맷으로 조회하고 싶을 때 sysdate 함수 사용법 sysdate는 현재 날짜와 시각 정보를 알려줘요. 오늘 이 포스팅을 쓴 날짜는 9월 29일인데요. 더미 테이블에서 단순히 sysdate 값만 확인해보니 '2021-09-29 23:41:53' 요렇게 값이 찍혔네요! 아주 간단하죠?? 참고로 sysdate는 기본적으로 DATE타입입니다! sysdate가 유용한 이유! 숫자와 산술연산 가능 sysdate가 많이 쓰이는 이유는 ..
[SQL] 정렬하기 order by 쿼리 사용법 1, 2 desc 의미 [데이터베이스 목차 완전정복] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 기초?에 해당하는 order by 절에 대해 작성해보려고 해요. [INDEX] 1. order by 란 무엇인가 2. desc와 asc 키워드 3. 정렬 기준이 다수일때 4. order by 1,2 order by란 무엇인가 내가 어떤 테이블에서 데이터를 조회했는데 그 결과를 정렬하고 싶을 때 사용하는 게 order by 절입니다. order by 절은 기본적으로 오름차순(ASC)입니다. SELECT * FROM EMPLOYEES e ORDER BY EMPLOYEE_ID asc; -> EMPLOYEES 테이블에 있는 모든 데이터를 조회하는데 EMPLOYEE_ID 오름차순 순으로 정렬해서 보여줘 이쁘게 정렬된 것을 볼 수 있습니다..
[오라클 SQL] ROWNUM - 특정 개수의 행만 조회하기, 행 번호 매기기 rownum = 2, order by rownum [데이터베이스 SQL 완전정복 목차] 안녕하세요~ 양햄찌 블로그 주인장입니다. 운영체제, 리눅스유닉스 카테고리에 이어 데이터베이스 파트도 차근차근 이어가보려고 하는데 갈길이 머네요 ㅎㅎ 오늘은 무슨 포스팅을 쓸까하다가 쉬운거부터 쓰는게 나을거같아서 골라온 ROWNUM입니다! [목차] 1. ROWNUM 역할 2. ROWNUM=1 과 ROWNUM=2 3. WHERE절에서 ROWNUM과 ORDER BY 4. SELECT절에서 ROWNUM과 ORDER BY 5. MySQL, MariaDB에서는 LIMIT ROWNUM 역할?! 만약 직원들의 정보가 담겨있는 EMPLOYEES 테이블이 있는데 여기서 연봉이 가장 큰 10사람만 뽑고싶어! 이럴 수 있죠~~~ 굳이 모든 데이터를 검색하지 않고, 특정 개수만큼 원하는 데..
[데이터베이스 SQL 기초] 오라클, MySQL 결과 중복 제거 DISTINCT에 사용법 [데이터베이스 완전 정복 목차] 안녕하세요 양햄찌블로그 주인장입니다. 이번에도 저번 시간에 이어서 기초편이예요. 언넝 데이터베이스 카테고리 포스팅 수가 늘어나길 희망하며.. DISTINCT 결과 중복 없이 조회하기 조회시 DISTINCT를 사용하면 중복을 제거한 결과를 보여줍니다. 요렇게 쓰면 끝이야요 간단하죠? 물론 GROUP BY 명령어를 이용해서 중복제거 결과를 도출할 수도 있지만, DISTINCT절이 목적에 좀 더 부합한다생각해서 수행속도가 크리티컬하지 않으면 저는 왠만하면 distinct를 사용합니다. 참고로 'select distinct([컬럼명]) from [테이블명];' 이렇게 distinct 괄호 안에 컬럼명을 넣어주는건 문법 에러가 나니 주의~ DISTINCT 사용 연습 우리가 맨날 연..
[오라클 MySQL 기초] BETWEEN, NOT BETWEEN 쿼리 결과 범위 조회하는 법, 비트윈사용법 [데이터베이스 목차] 안녕하세요 여러분 양햄찌 블로그 주인장입니다. 오늘은 아무 생각없이 포스팅을 쓰기 위해... 초보자를 위해 아주 기본적인 쿼리조회 방법에 대해 포스팅해보려고 해요. 오늘 포스팅 주인공은 BETWEEN입니당. 아주 간단한 포스팅이 될거예요. BETWEEN 사용법 BETWEEN은 뜻에서 바로 체감할 수 있듯이, 특정 값의 범위를 조건으로 결과를 조회하고 싶을 경우 사용합니다. 아주 간단한 문법이죠? 값1부터 값2까지 범위에는 값1 값2 모두 포함되어있습니다. 즉 값1 ≤ 조건 ≤ 값2 라는거죠~ BETWEEN문법은 또 다른 SQL문법으로, 'SELECT * FROM [테이블명] WHERE 값1
[오라클, MySQL] 대소문자와 관련된 UPPER, LOWER, INITCAP함수 사용법. 대문자로 변경, 소문자로 변경 [DBMS 데이터베이스 SQL 완전정복 목차] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 간단한 SQL문법에 대해 빠르게 포스팅을 진행해보려고 해요. ㅎㅎ 오늘 주제 주인공은 Upper, Lower, Initcap이라는 함수입니다. 참고로, upper와 lower는 오라클, mysql 모두 지원하는데 첫 글자만 대문자로 변경해주는 Initcap의 경우 오라클만 있고 Mysql에서는 이와 같은 별도의 함수가 정의되어 있진 않습니다. 대문자로 변경하는 UPPER 함수 먼저 Upper함수는 컬럼의 문자열을 소문자던 대문자던 모두 대문자 알파벳으로 변경해주는 함수입니다. 간단하쥬? select upper('HELLO world!') from dual; 더미 테이블인 dual를 통해서 간단하게 실행시켜봤어요...