반응형

MY SQL 12

[MY-SQL] RDBMS

1. RDBMS - 관계형 데이터베이스 시스템 - 테이블 기반의 DBMS >>테이블/ 컬럼 형태의 데이터 저장 방식 >>테이블과 테이블 간의 연관관계(주로 외래키 형태)를 이용해 필요한 정보를 구하는 방식 - 모델링은 E-R모델을 사용 - 테이블을 엔티티와 릴레이션십 테이블로 구분하는 방식 - 데이터를 테이블단위로 관리 >>>>>> 하나의 테이블은 여러 개의 컬럼으로 구성됨 - 테이블끼리의 중복정보는 최소화시킴 >>>>>> 동일한 데이터가 여러 군데 중복되어 존재하면 데이터의 수정 시 문제 발생 확률 높아짐 >>>>>> 정규화 -> 정규형 - 사용방식 -> 여러 테이블을 합쳐 큰 테이블을 생성해서 필요한 정보를 찾아내는 방식 2. 기본용어 - 스키마 : DB,테이블 정의 내역 - SQL 쿼리 * 관계형 ..

MY SQL 2023.04.28

[MY-SQL] DBMS

1. DBMS의 기초 data base management System - 데이터베이스를 관리하는 시스템 -DB: 테이블이 모여 이루는 데이터 단위 - 데이터를 저장하고 유지보수하고 이를 검색하는 시스템 CRUD(Create , Read , Updata , Delete) - 대량의 데이터를 처리하는 시스템 - 다양한 자료구조와 검색구조를 사용해 "빠른"검색이 가능 - 대부분의 시스템은 R(검색) >>> CUD(업데이트)의 빈도수가 많음 - 검색에 최적화 (쓰기에 최적화된 시스템은 NOSQL계열) 1 - 2 정렬 - 빠른 검색을 위해서는 데이터가 반드시 정렬되어 있어야함 - 정렬 되어 있지 않다면 평균적으로 전체 데이터의 절반 필요 - 정렬되면 데이터를 빠른 시간 안에 찾을 수 있음 - 퀵정렬/힙정렬 계열..

MY SQL 2023.04.28

[MY SQL] SQL 설치방법

1. 설치방법 http://bev.mysql.com/download/mysql에서 서 window 버전으로 선택을 하고 my sql installer msi파일을 다운로드를한다 1. 이 창이 뜨면 custom 을 누른다 2. my sql servers - my sql server - my sql server 8.0에 들어가서 마지막에 있는 걸 클릭해 오른쪽으로 옮긴다. 3. applications - mysql workbench - my sql workbench 8.0 - my sql workbench8.21-x64 4.documentation - samples and example - samples and examples 8.0 - samples and examples 8.0.17 을 위에 처럼 들어가..

MY SQL 2023.03.23

[SQLD] 1과목 데이터 모델링의 이해

SQLD 자격증을 공부 하기 전에 먼저 SQLD자격증은 무엇인가 알아보고 공부를 하려고 합니다 . SQLD는 SQL 개발자를 위한 자격증으로, 한국데이터진흥원에서 발행하는 SQLD 자격증은 SQL 프로그래밍 능력과 관련된 지식과 기술을 평가하는 시험입니다. 이 자격증을 취득하면 SQL 데이터베이스 개발 및 관리와 관련된 다양한 직무에서 경쟁력을 갖출 수 있습니다. SQLD 자격증 시험은 기본적인 SQL 문법, 데이터 조작, 데이터 정의, 데이터 제어, 데이터 관리 등에 대한 내용을 포함합니다. SQL은 두가지 자격증이 있으며 하나는 SQLP 자격증 다른 하나는 SQLD 자격증이 있습니다. SQLP 자격증은 실무 경력도 있어야하고 SQLD자격증 취득후 볼수 있는 시험이라 SQL을 공부하시는 분들이면 먼저 ..

MY SQL 2023.03.16

05. pymysql 실습하기 with google colab

첫 번째로 해야할 일은 구글 코랩에선 pymysql이 없으므로 !pip로 설치를 한다. 두번째는 코랩에 구글 드라이브를 연결한다. 그리고 저장을 한 야물파일을 읽음으로 불러온다. 이 실습은 db를 저장하는 실습이라 db 접속 정보을 입력을 해야한다. 각 다른 프로그램이기 때문에 프로그램을 연결을 해줄만한 연결객체를 만들어어야한다. 구글 코랩에서 sql구문을 실행하기 위해선 cursor객체를 사용해야한다 . 만들어논 연결객체를 이용헤서 코랩에서 sql구문을 사용할수 있게 설정한다. execute 메소드를 이용해 sql을 코랩으로 전송해준다. fetchall 메소드를 이용하여 쿼리에 실행결과를 다 가져온다. 무조건 sql구문을 열였을땐 close 메소드를 이용해여 닫아준다 .

MY SQL 2022.08.23

JOIN 절

-- 다수의 table 간에 공통된 데이터를 기준으로 조회하는 명령어 -- 컬럼을 기준으로 데이터가 매칭될 경우 결합한다. -- 다수의 테이블을 결합하여 조회 1. INNER JOIN INNER JOIN의 구조 select* from emp inner join dept on emp.deptno = dept.deptno; 이렇게 FROM 뒤에 INNER JOIN은 쓰고 테이블을 적으면 된다. 그리고 ON을 붙혀서 각 테이블에 겹치는 컬럼을 식으로 나타내면 된다 . -- 찾고자 하는 컬럼을 명시를 해서 특정 컬럼만 조회할수 있다. select ename, job ,dname, loc from emp inner join dept on emp.deptno = dept.deptno; -- 테이블에 별칭 적용해서 ..

MY SQL 2022.08.16

MY SQL 코드 실행 순서

-- from --> where--> group by --> having--> select--> order by -->limit 코드 실행 순서는 이렇게 진행이 된다 . FROM은 데이터 베이스를 가져오는 절 그 다음에 찾을 데이터를 가져오는 WHERE 절 그 다음 집계결과는 내는 GROUP BY 절 다음 집계결과 안에서 조건을 걸어 특정 데이터를 조회하는 HAVING절 조건이 다 맞는 데이터를 조회를 하는 SELECT절 조회한 데이터를 쉽게 알아볼수 있도록 정렬해주는 ORDER BY절 그리고 정렬된 데이터에 특정 행만 보고싶게 해주는 LIMIT절해서 결과값을 볼 수 있다 .

MY SQL 2022.08.16

Having 절, limit 절

having절 이란 !? group by 집계결과에 대한 조건 걸기이다 . 예를 들어보면 어떤 데이터가 있다. 객실 별로 생존률 0.7이상의 객실만 보고싶다면 ?? select cabin, avg(survived) as survived_raw from titanic_raw group by cabin having survived_raw>= 0.7 order by survived_raw; 객실 별로 생존률을 알아보고싶어서 group by에 cabin으로 묶에 집계결과를 내주고 그 다음에 having절이 시작해 조건을 찾아준다. 중요한건 grorup by 뒤에 적어야하고 order by 앞에 적어야한다. limit절 이란?! -- 조회되는 행 갯수를 지정할수있다. *limit절 구조 -- select * ti..

MY SQL 2022.08.16

3. MY SQL 실습 해보기

데이터는 타이타닉의 승객 정보이다 . 여기서 SQL실습을 진행을 해보았다 .... use playdata; ---------- 데이터 파일을 불러오기 select database(); ------- 데이터베이스를 조회하라는 의미 ! show tables; -----테이블을 조회한다는 말 select* from titanic_raw; ----------잘 불러왔는지 확인 /* passengerid -승객 (pk) survied - 생존여부(0:사망, 1:생존) pclass - 객실 등급 (1 , 2 , 3 ) name -이름 gender - 성별 sibsp - 동반한 형제 또는 자매 또는 배우자수 parch - 동반한 부모 또는 자식의 수 ticket - 티켓번호 fare - 요금 cabin - 객실 번호..

MY SQL 2022.08.12

2. MYSQL - DML , DCL

1. DML -- 테이블의 데이터를 조작하는 명령어 -- insert: 테이블에 데이터를 삽입하는 명령어 -- update: 테이블에 데이터를 수정하는 명령어 -- delete: 테이블에 데이터를 삭제하는 명령어 -- select: 테이블에 데이터를 조회하는 명령어 > use shop; select database(); # 데이터 삽입하기 -- 하나씩 삽입하기 desc tb_user; insert into tb_user(user_name,user_phone,user_addr) values("이관수","010-0000-0000","서울시 중랑구"); select * from tb_user; -- user_name의 varchar 길이가 10으로 설정되어있어 에러발생 insert into tb_user(us..

MY SQL 2022.08.11
반응형