[SQL]MySQL_뷰(VIEW)와 MySQL 권한 부여, 실습 문제 풀이
·
SQL/데이터 분석을 위한 MySQL
데이터 분석을 위한 MySQL ✔️ VIEW(뷰)✔️MySQL 서버에서 사용자 생성 및 권한 부여✔️실습 : DB 생성부터 데이터 조회    ✔️ VIEW(뷰)  VIEW(뷰)SELECT로 조회한 내용을 테이블 생성처럼 저장하는 것읽기 전용 -> VIEW에서 확인 가능  VIEW(뷰) 의 장점단순화: 복잡한 쿼리를 뷰로 생성여 데이터 조회 가능보안 강화: 사용자 권한을 뷰로 제한하여 데이터 노출 최소화유지보수: 테이블보다 생성과 제거가 용이   VIEW(뷰) 의 단점성능: 뷰가 복잡하면 쿼리 실행 시간이 길어질 수 있음제한: 수정 불가 뷰가 많아서 데이터 조작에 용이하지 않음의존성: 기반 테이블 삭제 시 뷰 사용 불가 -- 뷰 생성 기본 형식CREATE VIEW 뷰이름 AS SELECT문-- 뷰 제거 기..
[SQL]MySQL_SQL 함수(숫자, 문자열, 날짜와 시간) 활용
·
SQL/데이터 분석을 위한 MySQL
데이터 분석을 위한 MySQL ✔️ 숫자 계산 함수✔️ 문자열 처리 함수 ✔️ 날짜 및 시간 함수      ✔️ 숫자 계산 함수  절대값ABS()음수든 양수든 절대값을 반환-- 절대값 : ABS()select abs(-34), abs(1), abs(-256);-- 결과: 34, 1, 256   반올림ROUND(값, 소수점 자리)지정한 소수점 자리로 반올림-- 반올림 함수 : ROUND(값, 소수점 자리)select round(3.14567, 2);-- 결과: 3.15   올림CEIL()소수점 아래를 무조건 올림-- 올림 함수 : CEIL()select ceil(4.1);-- 결과: 5   내림FLOOR()소수점 아래를 버림-- 내림 함수 : FLOOR()select floor(4.999);-- 결과: 4..
[SQL]MySQL_ERD 다이어그램 생성과 DB 백업 및 불러오기
·
SQL/데이터 분석을 위한 MySQL
데이터 분석을 위한 MySQL  ✔️ ERD✔️ DB 백업 및 DB 불러오기      ✔️ ERD  ERD(Entity- Relationship Diagram)개체-관계 다이어그램  개체(Entity)DB에서 관리하고자 하는 대상 또는 객체예) 고객,제품, 주문 등일반적으로 사각형(Box)로 표현, 내부 개체 이름이 들어감  개체의 속성(Attribute)각 개체는 여러 속성을 가질 수 있음예) 고객ID, 전화번호 등타원형 또는 개체 내부에 나열하며경우에 따라 PK와 같은 중요 속성은 밑줄로 표시 + 속성의 종류단순 속성 : 더 이상 분해되지 않는 속성 예) 주민번호복합 속성 : 여러 하위 속성으로 분해할 수 없는 속성 예) 주소 -> 시,구,동다중 값 속성 : 하나의 개체가 여러 값을 가질 수 있는 속..
[SQL]MySQL_제약조건 있는 테이블 활용 및 ROLLBACK 실습
·
SQL/데이터 분석을 위한 MySQL
데이터 분석을 위한 MySQL ✔️ CRUD✔️ 제약조건이 있는 테이블 활용 ✔️ 트랜젝션과  Rollback     ✔️ CRUD  CRUD 작업과 SQL 연관   데이터베이스 생성 및 제거-- DB 생성create database 데이터베이스명;-- DB 제거drop database 데이터베이스명;   테이블 생성 및 제거-- 테이블 생성create table 테이블명(컬럼명1(데이터타입), 컬럼2(데이터타입),...)-- 테이블 제거drop table 테이블명;market_db 및 테이블 생성 실습 수행-- market_db 생성create database market_db;use market_db; -- DB 사용-- hongonh1 테이블 생성-- toy_id(int), toy_name(char..
[SQL] MySQL_MySQL 설치부터 SQL 구문 작성까지
·
SQL/데이터 분석을 위한 MySQL
데이터 분석을 위한 MySQL ✔️ DB와 SQL이 무엇인지?✔️ MySQL 설치✔️ MySQL SQL 쿼리 수행     ✔️ DB와 SQL이 무엇인지?   DB(DataBase)DB : 데이터의 집합DBMS : DB관리 운영하는 역할의 프로그램 DBMS 특징1. 데이터의 무결성(오류, 중복X)2. 데이터의 독립성(응용프로그램과 DB간 영향X)3. 보안(권한에 따라 접근 제한 가능)4. 데이터의 중복 최소화5. 응용 프로그램 제작 및 수정 용이6. 데이터의 안정성 향상(백업과 복원 용이)  테이블(Table)데이터 효율적 저장을 위한 구조데이터를 여러 개의 테이블로 나누어 저장기본키(Primary key)와 외래키( Foreign Key)를 사용해부모와 자식 관계로 묶어 데이터 효율적 저장 가능 해당 구..
[혼공S] 혼공단 13기_혼공학습단 13기, 나만의 SQL 성장기
·
SQL/혼자 공부하는 SQL
왜 혼공학습단인가? SQL을 배워야겠다고 생각한 건 데이터 분석 직무에 관심이 생기면서 시작됬습니다.혼자 공부하는 것보다는 다 같이 공부하는 스터디 형식이 좋을 것 같다는 생각에 찾아보다가 한빛미디어의 '혼공학습단'을 발견하였습니다. '혼자 공부하는 SQL' 책으로 스스로 공부하고 온라인으로 인증까지 할 수 있는 방식이 좋았습니다.게다가 현직자 강의에서 "SQL은 필수 스킬" 이라는 말을 듣고 확신이 생겼고,마침 BDA 학회에서 SQL을 접해본 경험이 있었기에, 이를 복습하며 실력을 발전시키기 위해서 혼공학습단 13기에 지원하게 되었습니다.    혼공학습단에서 얻은 것 혼공학습단은 단순히 책을 읽고 내용을 복습하는 것에 그치지 않았습니다.매주 미션을 수행하고 블로그에 학습 내용을 기록했고 디스코드 커뮤니..
[혼공S] 6주차_파이썬과 MySQL 연동 및 GUI 프로그램 활용
·
SQL/혼자 공부하는 SQL
혼자 공부하는 SQL  ✔️ 파이썬에서 SQL 실행✔️ 파이썬에서 MySQL 연동✔️ GUI 응용 프로그램 활용    ✔️ 파이썬에서 SQL 실행  파이썬(Python)무료로 강력한 기능 사용 가능설치와 사용환경 구축이 용이다양하고 강력한 외부 라이브러리 활용 PyMySQL 라이브러리MySQL과 파이썬을 연결하여 파이썬에서 SQL 쿼리 작성과 실행이 가능합니다.  파이썬 환경 준비파이썬 다운로드 페이지에서 각자 운영체제에 맞는 파일을 다운로드 받아서 설치 Download PythonThe official home of the Python Programming Languagewww.python.org  외부 라이브러리를 사용하기 위해서는 cmd(명령 프롬프트창)에서 pip install pymysql 실행..
[혼공S] 6주차_스토어드 프로시저, 스토어드 함수(커서)와 트리거
·
SQL/혼자 공부하는 SQL
혼자 공부하는 SQL  ✔️ 스토어드 프로시저(Stored Procedure)✔️ 스토어드 함수와 커서✔️ 트리거(Trigger)    ✔️ 스토어드 프로시저(Stored Procedure)  스토어드 프로시저MySQL에서 제공하는 프로그래밍 기능MySQL 내부에서 사용하는 경우 적절한 프로그래밍 기능 제공쿼리 문의 집합과 동일하다고 볼 수 있습니다.(어떤 동작을 일괄 처리하기 위한 용도)-- 스토어드 프로시저 기본 형식delimiter $$ -- 명확히 해주기 위해 $$ 사용($, %%, &&, // 도 사용 가능) create procedure 스토어드_프로시저_이름(in 또는 out 매개변수) -- 입력, 출력 매개변수 begin -- 해당 부분에 SQL프로그래밍 코드 작성 ..
[혼공S] 5주차_인덱스(Index) 원리와 MySQL 워크벤치 실습
·
SQL/혼자 공부하는 SQL
혼자 공부하는 SQL ✔️ 인덱스(INDEX)✔️ 인덱스(INDEX)의 내부 작동✔️ 인덱스 실제 사용    ✔️ 인덱스(INDEX)  인덱스DB 테이블의 특정 열(컬럼)에 대해 빠르게 검색하거나 정렬할 수 있도록 만드는 데이터 구조 클러스터형 인덱스 : 기본키를 지정(지정한 열을 기준 자동 정렬)하면 자동 생성되며 테이블에 1개만 생성 가능보조 인덱스 : 고유 키로 지정하면 자동 생성되며 여러 개로 생성 가능  인덱스의 문제점데이터를 빠르게 찾기 위한 인덱스의 생성이 너무 많아지면 필요 없는 인덱스가 나오게 되고 DB에서 차지하는 공간이 증가하면인덱스를 이용해 데이터를 찾는 것이 전체 테이블을 찾는 것보다 느려질 수 있습니다.MySQL은 인덱스를 사용할지 여부를 알아서 판단하고 활용합니다  인덱스의 장..
[혼공S] 4주차_제약조건을 활용한 테이블 및 가상 테이블(VIEW) 생성 및 활용
·
SQL/혼자 공부하는 SQL
혼자 공부하는 SQL✔️ 테이블 생성✔️ 테이블 제약조건✔️ 가상 테이블 : VIEW    ✔️ 테이블 생성  테이블표 형태로 구성된 2차원 구조(행과 열로 이루어짐)(행 = 로우, 레코드 / 열 = 컬럼, 필드)예) Excel 시트, MySQL 테이블 등    MySQL 워크벤치에서 GUI 환경에서 테이블 생성  1. 테이블을 생성할 새로운 데이터베이스 생성-- 새로운 데이터베이스 생성create database naver_db;  화면에 바로 적용되지 않기 때문에 SCHEMAS 패널의 새로고침 아이콘혹은 SCHEMAS 빈공간 우클릭 > Refreash All을 활용하여 확인   2. SCHEMAS의 Tables에서 우클릭 > Create Table 선택하여 member 테이블 생성 + 동일한 방법으로..