본문 바로가기

728x90
반응형

MySQL

[DB_MySQL] 이것이 MySQL이다 ch07 SQL 고급 4(피벗, JSON 데이터, 조인) 1. 피벗의 구현 ◎ 피벗(Pivot) 이란? ▷ 한 열에 포함된 여러 값 출력, 이를 여러 열로 변환하여 테이블 반환식 회전, 필요하면 집계까지 수행 1. uName을 기준으로 group -- 피벗의 구현 use sqlDB; create table pivotTest( uName CHAR(3), season CHAR(2), amount int ); desc pivotTest; insert into pivotTest values ('김범수', '겨울', 10), ('윤종신', '여름', 15), ('김범수', '가을', 25), ('김범수', '봄', 3), ('김범수', '봄', 37), ('윤종신', '겨울', 40), ('김범수', '여름', 14), ('김범수', '겨울', 22), ('윤종신', .. 더보기
[DB_MySQL] 이것이 MySQL이다 ch07 SQL 고급 3(수학 함수, 날짜 및 시간 함수, 시스템 정보 함수) 1. 수학 함수 1. ABS(숫자) ▷ 숫자의 절댓값 계산 -- ABS(숫자) : 절댓값 select abs(-100); -- 100 반환​ 2. ACOS(숫자), ASIN(숫자), ATAN(숫자), ATAN2(숫자1, 숫자2), SIN(숫자), COS(숫자), TAN(숫자) ▷ 삼각 함수와 관련된 함수 제공 3. CEILING(숫자), FLOOR(숫자), ROUND(숫자) ▷ 올림, 내림, 반올림 계산 -- CEILING(숫자) : 올림 = ceil() -- FLOOR(숫자) : 내림 -- ROUND(숫자) : 반올림 select ceiling(4.7), floor(4.7), round(4.7); -- 5, 4, 5 반환​ 4. CONV(숫자, 원래 진수, 변환할 진수) ▷ 숫자를 원래 진수에서 변환할.. 더보기
[DB_MySQL] 이것이 MySQL이다 ch07 SQL 고급 2(ifnull, nullif, case, 문자열 함수) 1. MySQL 내장 함수 ◎ 내장 함수 ▷ 흐름 함수, 문자열 함수, 수학 함수, 날짜/시간 함수, 전체 텍스트 검색 함수, 형 변환 함수, XML 함수, 비트 함수, 보안/압축 함수, 정보 함수, 공간 분석 함수, 기타 함수 등 ◎ 제어 흐름 함수 ▷ 프로그램의 흐름 제어 ▷ IF(수식, 참, 거짓) ▶ 수식이 참 또는 거짓인지 결과에 따라서 2중 분기 SELECT IF(100>200, '참이다', '거짓이다'); ▷ IFNULL(수식1, 수식2) ▶ 수식1이 NULL이 아니면 수식1이 반환되고 수식1이 NULL이면 수식 2가 반환 -- ifnull(수식1,수식2) -- 수식1 null이라면 수식2 반환 -- 수식1 null이 아니라면 수식1 반환 select ifnull(null, '널이군요'), .. 더보기
[DB_MySQL] 이것이 MySQL이다 ch07 SQL 고급 1(데이터 형식, 변수 사용, 형 변환) 1. MySQL의 데이터 형식 ◎ MySQL에서 지원하는 데이터 형식의 종류 ▷ Data Type으로 표현 ▶ 데이터 형식, 데이터형, 자료형, 데이터 타입 등 다양하게 불림 ▷ 데이터 형식에 대한 이해가 필요한 이유 ▶ SELECT문 더욱 잘 활용 ▶ 테이블의 생성을 효율적으로 하기 위해 필요 ▷ MySQL에서 데이터 형식의 종류는 30개 정도 ▶ 중요하고 자주 쓰는 형식에 대해 중점 학습 ◎ 숫자 데이터 형식 NO 데이터 형식 바이트 수 숫자 범위 설명 1 BIT(N) N/8 1~64bit를 표현. b'0000' 형식으로 표현 2 TINYINT 1 -128 ~ 127 정수 3 ★SMALLINT 2 -32,768 ~ 32,767 정수 4 MEDIUMINT 3 -8,388,608 ~ 8,388,607 정.. 더보기
[DB_MySQL] 이것이 MySQL이다 ch06 SQL 기본 문법3 (DML, DDL, DCL, insert, auto_increment) 1. SQL의 분류 ▷ DML (Data Manipulation Language, 데이터 조작 언어) ▶ 데이터를 조작(선택, 삽입, 수정, 삭제)하는데 사용되는 언어 ▶ DML 구문이 사용되는 대상은 테이블의 행 ▶ DML 사용하기 위해서는 테이블이 정의되어 있어야 합니다. ▶ SQL문 중 SELECT, INSERT, UPDATE, DELETE가 이 구문에 해당 ▶ 트랜잭션(Transaction)이 발생하는 SQL도 DML에 속함 → 테이블의 데이터를 변경(입력/수정/삭제)할 때 실제 테이블에 완전히 적용하지 않고, 임시로 적용시키는 것 → 취소 가능(ROLL BACK) ▷ DDL (Data Definition Language, 데이터 정의 언어) ▶ 데이터베이스, 테이블, 뷰, 인덱스 등의 데이터베이.. 더보기
[DB_MySQL] 이것이 MySQL이다 ch06 SQL 기본 문법 2 (WHERE, BETWEEN, IN, LIKE, 서브쿼리) 1. 특정 조건의 데이터만 조회 ◎ 기본적인 WHERE절 ▷ 조회하는 결과에 특정한 조건을 줘서 원하는 데이터만 보고 싶을 때 사용 ▷ SELECT 필드이름 FROM 테이블이름 WHERE 조건식; SELECT B* FROM usertbl WHERE name = '김경호'; ◎ 관계 연산자의 사용 ▷ OR 연산자 : '...했거나', '...또는' ▷ AND 연산자 ; '...하고', '...면서', '...그리고' ▷조건 연산자(=, , =, , != 등)와 관계 연산자(NOT, AND, OR 등)를 조합하여 데이터를 효율적으로 추출 가능 SELECT userID, Name FROM usertbl WHERE birthYear >= 1970 AND height >= 182; ◎ BETWEEN... A.. 더보기
[DB_MySQL] 이것이 MySQL이다 ch06 SQL 기본 문법 1 (SELECT, FROM) 1. SELECT문 ◎ ▷ 원하는 데이터를 가져와 주는 기본적인 구문 ▷ 가장 많이 사용되는 구문 ▷ 데이터베이스 내 테이블에서 원하는 정보 추출하는 명령 ◎ USE 구문 ▷ SELECT문 학습 위해 사용할 데이터베이스 지정 ▷ 지정해 놓은 후 특별히 다시 USE문 사용하거나 다른 DB를 사용하겠다고 명시하지 않는 이상 모든 SQL문은 지정 DB에서 수행 → ex) USE 데이터베이스_이름; ▷ employees를 사용하기 위해서는 쿼리창에 다음과 같이 입력합니다. → ex) USE emplyees; ▷ Workbench에서 직접 선택해서 사용도 가능 ▶ [Navigator]의 [Schemas] 탭, employees 데이터베이스를 더블 클릭하거나 마우스 오른쪽 버튼을 클릭한 후 [Set as Defau.. 더보기
[DB_MySQL] 이것이 MySQL이다 ch05 MySQL 유틸리티 사용법 1. MySQL Workbench 사용 방법 ◎ MySQL Workbench의 발전과정 ▷ 2002년에 만들어진 DBDesigner4 제품 ▶ MySQL의 비주얼 툴로 사용 ▷ 2003년에 MySQL GUI Tools Bundle로 통합 ▶ 2005년에 MySQL Workbench 프리뷰버전으로 변경되어 발표 ▶ 2007년부터 본격적으로 개발되고 버전이 업그레이드 ▷ MySQL 5.0 버전부터 본격적으로 MySQL의 GUI 툴로 제공 ▶ Workbench 5.0 버전은 Windows용으로만 제공 ▶ 5.1 버전에서 다른 운영체제도 지원 ▶ 2018년에 8.0 버전 발표 ◎ Workbench의 주요한 기능 ▷ 데이터베이스 연결 기능 ▷ 인스턴스 관리 ▷ 위저드를 이용한 MySQL의 동작 ▷ 통합된 기능의 .. 더보기

728x90
반응형