본문 바로가기

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

(36)
[데이터베이스 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를 통해서 간단하게 실행시켜봤어요...
[오라클 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 완전 정복 목차] 안녕하세요 방문자님들~ 오늘도 찾아온 양햄찌 블로거 입니다. SQL에서 분기문으로는 코딩에서 if와 switch와 같이, SQL에는 CASE WHEN, DECODE문 요렇게 있는데요, 어쨌든 세개 모두 분기처리하는 역할을 수행하고 있습니다. ICASE WHEN, DECODE 중 오늘은 CASE WHEN먼저 알아보려고 합니다. ㅎㅎ CASE WHEN ~ 은 무엇인가 SQL에서도 조건문을 쓰고 싶을 수 있겠죠! if문이나 switch구문 처럼요 ㅎㅎ A가 if 조건1을 충족할경우 결과1을 수행하고 else if 조건2를 충족할 경우 결과2를 수행하고 else if 조건3을 충족할 경우 결과3을 수행하고 else 그 외는 해당 로직을 타게끔!! 그런 분기문 역할을 해주는..
[데이터베이스 정규화] 제 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정규화에 [데이터베이스 완전정복 목차!] 안녕하세요~!! 오늘도 찾아온 양햄찌블로거 입니다. 다른 카테고리에 비해 디비관련 글 개수가 적은 것..