Computer Science

공부한 내용을 정리합니다
Computer Science/Database, SQL

데이터 조작 프로시저

정보처리기사 필기 준비하며 정리한 내용입니다. 데이터 조작 프로시저 작성 프로시저 데이터베이스 안에 저장된 하나의 일처리하는 단위 DB내부에 있는 쿼리문을 이용하여 프로그램을 짜놓은 것 쿼리의 집합 데이터 주고받는 과정을 모아서 함수로 만든 것 데이터베이스 내부에서 돌아가는 프로그램의 단위이다 저장 프로시저의 범위 Stored Function 무조건 리턴값이 있는 것 데이터베이스에서 계산한 것만 돌려주면 됨 (대부분) 인자값 전달할 땐 In Out Inout 세가지 주기만하고 받아오고 넣을수도있고뺄수도있고 이중에서 IN만 사용가능하다 (받아올 수만 있다) CREATE OR REPLACE FUNCTION function_name CREATE FUNCTION만 있다면? 무조건 생성만 시킴 OR REPLACE..

Computer Science/Data Structure

데이터 입출력 구현 - 자료 구조

정보처리기사 필기 준비하며 정리한 내용입니다. 자료구조 개념 자료들을 한정적인 공간에 효율적으로 저장 및 처리하는 모든 작업. 빠르게 찾을 수 있게 된다! 시간 단축 특징 효율성 추상화 재사용성 자료구조의 분류 ⭐ 선형 구조 : 데이터들이 연속적으로 있는 구조 리스트 선형 리스트 연결 리스트 스택 큐 데크 비선형 구조 : 연속적X 트리 : 사이클 발생X 그래프 : 사이클 발생 O 트리와 그래프가 비선형 구조라는 것을 알아두자! 선형 구조 배열 Array = list 논리적으로도, 메모리상에 올라간 상태로도(물리적으로도) 이어져있다. 자료형과 기억 공간의 크기가 같다. 연속적, 순서적 (논리, 물리적으로도!) 리스트 - 선형 리스트 배열과 똑같은 형태 연속적인 기억장소에 저장된다 장점 저장 효율 뛰어남 접..

Computer Science/Database, SQL

SQL 문법

테이블 만들기 CREATE CREATE TABLE customers (id INTEGER PRIMARY KEY, name TEXT, age INTEGER, weight REAL); AUTOINCREMENT id 값에 AUTOINCREMENT를 붙여주면 1씩 증가하는 값이 자동으로 생성된다 CREATE TABLE books ( id INTEGER PRIMARY KEY AUTOINCREMENT, author TEXT, title TEXT, words INTEGER); 데이터 삽입 INSERT INSERT INTO customers VALUES (73, "Brian", 33); 특정 열 INSERT INTO customers (name, age) VALUES ("Brian", 33); 데이터 쿼리 선택 전체 ..

Computer Science/Database, SQL

데이터베이스 분포도

분포도가 낮을수록 좋다는데 왜 성별은 분포도가 좋지 않다는 거지? 라는 의문을 해소하기 위해 알아본 자료를 정리해보았다. Selectivity 선택성, 분포도 양쪽으로 번역되는 것 같다. 개인적으로는 선택성이라는 번역이 해당 내용에 대한 이해를 돕는 것 같다. 이유는, 이 개념이 필요한 이유가, 인덱스를 구성하기 위해 한 테이블에서 어떤 속성을 선택할지를 결정하기 위함이기 때문이다. 선택성이/분포도가 좋다는 말은 내가 원하는 값을 쉽게 찾아갈 수 있다는 뜻이다. 이를 위해서는 특정 컬럼의 데이터가 테이블에 평균적으로 분포되어 있는 정도를 알아야 한다. 산식 해당 컬럼 기준으로 distinct(중복제거)된 count / 전체 count col1 컬럼 : 전체 건수 100건, 값들은 모두 A, B 의 2가지..