본문 바로가기

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

(33)
[오라클 MySQL] COALESCE 두 개 컬럼 중 존재하는 값으로 합치고 싶을 때, 컬럼 병합하는 함수, 여러 열 NULL아닌 컬럼 찾기 [DBMS 데이터베이스 SQL 완전정복 목차] 안녕하세요 양햄찌 블로그 주인장입니다. 오늘은 SQL 함수 중 COALESCE 에 대해 작성하려고 해요. COALESCE 자체가 원래 기본적으로 합치다 라는 뜻이 있죠?? 넹 컬럼을 합친다고 생각하면 돼요. COALESCE 언제 사용할까 예를 들어 A테이블에 phone이라는 컬럼과 B테이블에 tel이라는 테이블이 있는데, 사실 컬럼명은 다르지만 의미하는건 같다고 생각해봅시다. 둘다 전화번호를 뜻해요 그런데 어떤 경우에는 phone이라는 컬럼에 전화번호 데이터가 insert되고 또 다른 경우에는 tel이라는 컬럼에 전화번호 데이터가 insert된다고 해봐요. phone을 확인했다가, 없으면 tel을 확인하고,,ㅊ 왔다갔다 검색하는게 귀찮기도 하고, 한 번에 정..
[DB SQL] 문자열 붙이기, 문자열 합치기 - CONCAT 함수와 || 연산자 사용하기 (MySQL과 ORACLE의 차이) [데이터베이스 DBMS SQL 완전정복 포스팅 목차] 안녕하세요~~ 오늘도 SQL구문 하나를 들고 왔습니다. 꼭 알아야 할 필수 구문 중 하나이죠!ㅎㅎ 데이터는 이전에 같이 다운로드 받았던 EMPLOYEES 테이블을 예시로 사용하였습니다. CONCAT 함수란? CONCAT 문법 CONCAT은 CONCATENATION의 약자입니다. concatenation 단어 자체가 '문자열의 연결'이라는 뜻이랍니다.ㅎㅎ 넹. 문자열을 연결하고 싶을 때 CONCAT을 사용합니다. 문자열1과 문자열2를 연결하고 싶을 때에는 CONCAT(문자열1, 문자열2)를 해주면 됩니다. SIMPLE TEST SELECT CONCAT('양햄찌 ', '블로그!') 문자열결과 FROM DUAL; "양햄찌 " + "블로그!" = "양햄찌 블..
[디비 SQL] SQL에도 IF분기문이 있다? CASE WHEN THEN 문법 알아보기, CASE구문 사용법 [데이터베이스 SQL 완전 정복 목차] 안녕하세요 방문자님들~ 오늘도 찾아온 양햄찌 블로거 입니다. 쿼리문에서 많이 쓰는 구문 하면 CASE WHEN과 DECODE인데요. 오늘은 CASE WHEN먼저 알아보려고 합니다. ㅎㅎ CASE WHEN ~ 은 무엇인가 SQL에서도 조건문을 쓰고 싶을 수 있겠죠! if문처럼요 ㅎㅎ A가 if 조건1을 충족할경우 결과1을 수행하고 else if 조건2를 충족할 경우 결과2를 수행하고 else if 조건3을 충족할 경우 결과3을 수행하고 else 그 외는 해당 로직을 타게끔!! 그런 분기문 역할을 해주는 것이 CASE WHEN THEN~ 구문입니다. 조오금 키워드가 달라서 그렇지 비교해보면 해당 문법이 뭘 의미하는지 알겠죠?? 똑.같.아.요! A가 "if 조건1 충족시..
[데이터베이스 정규화] 제 3정규형(3NF)와 이행적 종속성에 대해 살펴보자 [데이터베이스 DBMS 완전정복 목차] 안녕하세요 블로거 양햄찌입니다~! 최근에 쭉 정규화에 대한 포스팅을 진행중인데요, 저번에 알아봤던 제1정규형(1NF) 제2정규형(2NF)에 이어서 오늘의 주제는 제 3정규형(3NF)입니다. 물론 해당 포스팅을 진행하기 전에 제1정규형과 제2정규형에 대해 알고 있어야합니다. 또 이와 관련있는 정규화의 목적, 함수적 종속성(FD: Functional Dependency), 완전 함수적 종속과 부분적 함수 종속 등의 개념 또한 이해하고 있어야 합니다. 해당 부분에 대한 학습이 부족하다고 생각하시는 분들은 아래 링크를 참고해주세요. ▼ 정규화란 무엇인가, 그시작 제1정규화: jhnyang.tistory.com/357 [데이터베이스 DBMS] 정규화에 대해서 알아보자~! 정..
[데이터베이스 정규화] 제2정규화(2NF)와 알아보는 결정자와 종속자 그리고 그 관계 (완전 함수적 종속과 부분 함수적 종속) [데이터베이스 강좌 링크 바로가기] 안녕하세요~~ 양햄찌 주인장입니다. 저번 포스팅에서 정규화란 무엇인지! 정규화가 왜 필요한지에 대한 설명과 더불어 제1정규화를 간략하게 살펴보고 끝냈었는데요. 오늘은 그 포스팅에 이어서 제2정규화에 대해 알아보려고 합니다. 정규화의 목적에 대한 개념은 당연히 알고 있다는 가정하에 진행할거예요! 혹시 이전 포스팅을 보지 못하신 분은 아래 링크를 참고해주세요 ▼ 정규화란 무엇인가, 그시작 제1정규화: jhnyang.tistory.com/357 [데이터베이스 DBMS] 정규화에 대해서 알아보자~! 정규화를 해야하는 이유와 필요성, 제1정규화에 [데이터베이스 완전정복 목차!] 안녕하세요~!! 오늘도 찾아온 양햄찌블로거 입니다. 다른 카테고리에 비해 디비관련 글 개수가 적은 것..
[데이터베이스 DBMS] 정규화에 대해서 알아보자~! 정규화를 해야하는 이유와 필요성, 제1정규화에 대해서 [데이터베이스 완전정복 목차!] 안녕하세요~!! 오늘도 찾아온 양햄찌블로거 입니다. 다른 카테고리에 비해 디비관련 글 개수가 적은 것 같아 요새 포스팅을 좀 늘리려고 노력하고 있어요 ㅎㅎ 오늘은 뭐에 대해 쓸까 하다가 정규화에 대해 작성해보려고 합니다. 정규화란 무엇인가? 정규화가 중요한가? - NORMALIZATION of DBMS 정규화라는 단어를 들으면 좀 어렵게 느껴질 수 있는데, 쉽게 말하면 거지같이 테이블 짜고 아무렇게나 쑤셔넣었다가는 원하는 정보를 관리하기 어려워 추후 업무가 고달파질 수 있는데, 중복 데이터를 최소화 하는 등 여러 사항을 고려해서 이쁘게 설계를 해 생길 수 있는 문제들을 방지하자 입니다. ㅋㅋ 그러니 당연히 정규화 작업은 중요하겠죠? 근데 어떻게 설계를 해야 잘 짜는 것일까..
[SQL] ROLLUP과 GROUP BY. 집계 통계에 사용되는 롤업 함수 사용법을 알아보자. 롤업 합계 필드명 NULL 이름 변경 [데이터베이스 SQL 완전정복 목차] 안녕하세요 양햄찌입니당 저번 포스팅에서 기본적인 그룹핑 조건절 GROUP BY와 having에 대해서 살펴보았는데 혹시 기억하시는지요~!? 그 때 마지막에 간단하게 ROLLUP에 대해 언급하고 지나갔었죠 ㅎㅎ 오늘은 그때에 이어서 ROLLUP에 대해 좀 더 알아보는 시간을 가지려고 합니다. 그 전에 당연히! group by에 대한 개념은 익히고 있어야 해요. ▼group by와 having절: jhnyang.tistory.com/304 [오라클, MySQL] 컬럼을 그룹지어 통계를 파악하자. group by와 having절 사용법, 사용 가능 대표 집계 [데이터베이스 SQL 완전정복 목차] 안녕하세요 양햄찌 블로거입니다. 오늘 살펴볼 쿼리는 group by와 havi..
[DMBS 무료 툴 소개] DBeaver 다운로드 및 설치. 디비버 오라클과 연동해 실행해보기 [DBMS 데이터베이스 목차] 안녕하세요 블로그 주인장 양햄찌입니다. 저번에 오라클과 SQL Developer 설치 방법을 소개해봤었는데요, DBMS관련 없이 사용할 수 있는 무료 툴 하나를 소개해볼까 해요. 바로바로 DBeaver입니다. 하나의 DBMS나 운영체제에 종속되지 않고 다양하게 지원해주고 있는 툴이예요. 또한 DBeaver는 따로 오라클 클라이언트를 깔 필요가 없다는 장점도 있지요. 먼저 툴이기 때문에, 툴 설치 이전에 DBMS가 다운로드 되어 있어야 합니다. 사전 DBMS설치하기 ▼오라클 무료 에디션 설치하기 : jhnyang.tistory.com/256 [데이터베이스 실습 준비] 무료 오라클 에디션 다운로드, SQL DEVELOPER 툴 설치, Oracle XE 설치 [데이터베이스 목차 ..