본문 바로가기

Back-End/데이터베이스

(20)
[DB] 데이터 수집하기 데이터 수집하기 1. 한국전력거래소 시간별 전력수요량 데이터 수집 2. 데이터 불러오기 - 결측치 찾기 - 이상치 찾기 3. 데이터 정제화 - 컬럼명 추출 - 빈 데이터프레임(1) 생성 - 데이터프레임(2)에 데이터 행단위 추가하기 - 데이터프레임(1)+(2) 합치기 4. 정제된 데이터 파일 저장하기 데이터 수집 한국전력거래소 시간별 전력수요량 데이터 수집 🐾 - 수집위치 : data.go.kr - 다운로드 : 한국전력거래소_시간별 전력수요량 (파일데이터 or 오픈API) - CSV : 파일데이터로 다운로드, JSON/XML : 오픈 API - 메타데이터 : 컬럼에 대한 타입과 데이터 형식을 알려주는 문서 - 어떻게 관리하면 데이터를 편하게 사용할 수 있을까? 25개 컬럼?(24시간 데이터니까) → 너무..
[DB] 데이터 전처리 기초 - 판다스(pandas) 전처리 기초 1. 판다스(pandas) : 파이썬, 라이브러리 - 파이썬 사용하는 이유 : 가볍고 직관적임, 웹프로그래밍이 가능하다. 데이터 처리 라이브러리가 잘 만들어져 있다. 2. 데이터 분석과정 3. 데이터 전처리 판다스 판다스(pandas) 🐾 - 행렬 데이터를 처리하기 위한 다양한 함수를 지원하는 라이브러리 - 파일 읽기, 저장, 행렬데이터 처리, 기본시각화 등 지원 - 데이터 전처리 과정에서 주로 사용 데이터 분석과정 데이터 분석과정 🐾 - 데이터 수집 > 데이터 전처리 > 데이터 가공(필요시 전처리) > 데이터 분석 탐색/시각화(필요시 전처리) > 필요시 모델 훈련(머신러닝 or 딥러닝) > 웹서비스 또는 분석보고서 - 일반적으로 책에서는 " 데이터수집 > 전처리 > 분석 > 시각화 " 로 ..
[DB]데이터베이스(MariaDB) - 함수, 뷰(view), 프로시저(procedure) 데이터베이스 함수 중복을 줄이고 더 편하게 사용하도록 도와주는 함수를 만드는 방법을 알아보자. 이렇게 만든 사용자정의 함수를 UDF라고 한다. 함수 생성하기 새로운 쿼리 생성 후 코드 작성 → F9로 실행 1. Delimiter(구문 문자) : 문법의 끝을 나타내는 역할 2. 사용자 정의 함수 생성 (paramGu는 매개변수) 3. 리턴 타입 정의 4. 함수 기능 시작과 끝 : BEGIN - END // 5. 반환할 값을 저장할 변수 선언 (리턴타입사이즈 = 변수사이즈) : DECLARE 6. 반환하기 : RETURN ※ ' // ' 뒤에는 아무 것도 있으면 안됨!!(스페이스바도 조심) ※ 스트링 타입이 UTF8이 아니면 타입정의 뒤에 ' CHARACTER Set UTF8MB4 ' 작성! ※ 조회한 결과..
[DB]데이터베이스 그룹함수 - WITH ROLLUP, CUBE, GROUPING SETS 데이터베이스 그룹함수 데이터베이스를 Group By 지어줄 때 사용할 수 있는 함수들을 알아보자. MariaDB 그룹함수 : WITH ROLLUP , HAVING ORACLE 그룹함수 ROLLUP, CUBE, GROUPING SETS WITH ROLLUP 2개 이상의 컬럼을 이용하여 그룹 짓는 경우 1. 그룹별 중간합계(집계함수에 대해서)를 표시 2. 마지막 행에는 전체합계가 표시됨 ex. P101건에서 총 39건, P102건에 대해서 60건, P201건에서 189건 문제1 상품분류 전체에 대한 상품이름과 구매수량의 총합을 조회하기 조회컬럼 : 전체상품분류코드, 상품명, 구매수량의 총합 1. 단, 구매년도가 2005년도 2. prod, cart 테이블만 사용 SELECT prod_lgu, prod_nam..
[DB] 데이터베이스 - self Join, outer Join, union, exists 문제1 - 회원아이디 b001회원의 마일리지값보다 큰, - 회원정보 조회하기 - 조회컬럼 : 회원아이디, 이름 - 2가지 이상의 방법 적용 -- 답1 (가상테이블 적용) SELECT A.mem_id, A.mem_name, A.mem_mileage FROM (SELECT mem_id ,mem_mileage, mem_name FROM member) A, (SELECT mem_id ,mem_mileage FROM member WHERE mem_id = 'b001') B WHERE A.mem_mileage > B.mem_mileage; -- 답2 (서브쿼리적용) SELECT mem_id, mem_name FROM member WHERE mem_mileage > (SELECT mem_mileage FROM mem..
[DB]데이터베이스 명령어5 (MariaDB) - 조인(Join), 가상테이블(inline view) 조인(JOIN) Inner Join 방식은 일반방식 or 표준방식 모두 표준처럼 사용됨 1. Inner Join - 일반방식 "우리나라 표준처럼 사용" Select 테이블1.컬럼1 ... 테이블n.컬럼1 From 테이블1, 테이블2, ... , 테이블n Where 관계조건(PK = FK) And 일반조건 From절 뒤에 테이블들을 콤마(,)로 구분하여 사용 Where절에 관계조건식(PK=FK)을 추가함 관계조건식은 최소한 (사용된 테이블의 갯수 -1) 만큼 제시 되야함 (SQLD출제) 2. Inner Join - 표준방식 "해외 표준처럼 사용" → 단계가 더 짧음 Select 테이블1.컬럼1 ... 테이블n.컬럼1 From 테이블1 Inner Join 테이블2 O..
[DB]데이터베이스 명령어5 (MariaDB) - 그룹함수(집합함수) 문자열 함수: CONCAT(str1, str2, ...): 문자열을 연결합니다. SUBSTRING(str, pos, len): 문자열의 일부분을 추출합니다. LENGTH(str): 문자열의 길이를 반환합니다. 숫자 함수: ROUND(x): 소수점 이하를 반올림합니다. ABS(x): 숫자의 절댓값을 반환합니다. 날짜 및 시간 함수: NOW(): 현재 날짜와 시간을 반환합니다. DATE_FORMAT(date, format): 날짜를 지정된 형식으로 포맷합니다. 논리 함수: IF(expr, true_value, false_value): 조건에 따라 값을 반환합니다. COALESCE(val1, val2, ...): NULL이 아닌 첫 번째 값을 반환합니다. 집계 함수: COUNT(expr): 특정 조건을 만족하..
[DB]데이터베이스 명령어4 (MariaDB) - replace, round, case, if, null 체크, 날짜 함수, 형 변환 함수 DB회사들마다 종속함수라는 것이 있다. 종속함수는 '다른'DB에서는 함수 이름이 다른 함수인데 우리는 MariaDB의 종속함수를 알아보자. 문제1 내용 1. 상품분류명에 컴퓨터가 포함되어 있고, 주문이력이 있는 상품에 대한 데이터를 조회. 2. 상품명, 상품분류명 조회하기 SELECT prod_name, (SELECT lprod_nm FROM lprod WHERE lprod_gu = prod_lgu) AS lprod_nm FROM prod WHERE prod_lgu IN (SELECT lprod_gu FROM lprod WHERE lprod_nm LIKE '%컴퓨터%') AND prod_id IN (SELECT cart_prod FROM cart WHERE cart_prod = prod_..