Computer Science

JOIN (조인)여러테이블을 동시출력, 참조할경우FROM 절에 조인할 테이블 나열동일한 열이름이 여러 테이블에 있을경우 Alias N개 테이블 조인할때 N-1개 조인 필요 EQUI JOIN:동등조건경우'=' 비교를 통해 같은 값을 가지고있는 행을 연결하여 결과를 얻음NON EQUI JOIN:동등조건아닐때INNER JOINJOIN 조건 성립하는 데이터만 출력OUTER JOINJOIN 조건에 성립하지않는 데이터도 출력(LEFT/RIGHT/FULL OUTER JOIN) NATURAL JOIN조인조건 생략시 두 테이블이 같은 이름으로 자연 연결되는 조인CROSS JOIN조인조건 생략시 두테이블 의 발생가능한 모든 행을 출력SELF JOIN하나의 테이블을 두번 이상 참조, 테이블 별칭 무조건 사용 표준 조인INN..
SQL 종류DDL(AUTO COMMIT)CREATEALTERDROPTRUNCATE DMLINSERTDELETEUPDATEMERGE DCL(권한)GRANTREVOKE TCL(트랜섹션관리)COMMITROLLBACKDQLSELECT     SELECT문작성 SELECT 컬럼명 또는 표현식 FROM 테이블 또는 뷰WHERE 조회조건GROUP BY 그루핑 컬럼명HAVING 그루핑 필터링조건ORDER BY  정렬 컬럼명  실행FROM->WHERE->GROUP BY ->HAVING ->SELECT ->ORDER BY순 실행  SELECTSELECT문 Alias(별칭)EX)EMPNO AS 사번 AS 생략 가능EX)EMPNO 사번 SELECT문에서 별칭 사용시 ORDER BY에서만 별칭사용가능(실행순서때문에)   FRO..
제 1정규화원자성을 갖도록 테이블을 분해  제 2정규화제 1정규형에서 완전함수종속을 만들도록 테이블을 분해=> PK가 2개이상일때 분리하는작업 제 3정규화제 2정규형에서 이행적 종속을 없애도록 테이블을 분해A->BB->C 일때 A,B  ,  B,C 분해   반정규화(정규화 안함)조회성능향상유연성이 낮아짐    관계존재관계: 사원,부서행위관계: 주문,고객  조인분리된 두 테이블을 참조하기 위해 데이터를 연결하는 과정  트랜잭션하나의 연속적인 업무단위독립적으로 발생 금지부분 COMMIT 불가 -> 동시에 COMMIT 또는 ROLLBACK 처리   NULL아직 정해지지 않은값0이나 "" 하고 다름연산결과 항상 NULL집계함수 무시
속성업무에서 필요하는 성질,특징분리되지않는 최소 데이터단위ex)이름, 학번, 학과번호 엔터티 엔터티 속성   속성 특징주식별자에 함수적 종속성업무에 필요해야함1개의 값을 가짐(원자성)  속성분류속성의 특징에 따라기본속성: 업무에서 추출된 속성설계속성: 업무를 규칙화하기위해 만들어진 속성파생속성: 계산을 빠르게 하기위해 만들어짐  엔터티 구성방식에 따라PK:인스턴스를 식별FK:다른 엔터티와의 관계에서 포함일반속성: 엔터티에 포함되있지만 PK/FK가 아님   분해 여부에 따라단일속성: 이름, ID복합속성: 주소(시,구,동)다중값속성: 상품리스트 속성 명명규칙업무사용서술식 X약어X유일한명칭  도메인속성의 범위   관계엔터티간의 연관성   관계종류존재적관계:부서 and 사원행위적관계:고객 and 주문   관계구..
모델링현실세계의 비지늬스 프로세스와 데이터 요구사항을 "추상화", "구조화"한다. 모델링 특징단순화: 불필요한 세부사항 제거추상화: 간략하게명확화: 정확한 현상 모델링 유의점중복: 같은 정보를 저장하지 않도록 설계비유연성: 사소한 변화에 모델 변경 변화하면 안됨비일관성: 모순,상관되는 내용 없어야함, 데이터 중복없어도 발생가능 모델링 요소엔터티속성관계 모델링 3단계개념적 모델링: 핵심 엔터티를 추출논리적 모델링: 데이터 정규화 수행, 세부속성,식별자,관계 표현물리적 모델링: 물리적으로 생성   ERD 절차엔터티 도출, 그림엔터티 배출엔터티 관계 설정관계명관계 참여도관계 필수여부   엔터티현실세계에서 독립저긍로 식별 가능한 객체나 사물인스턴트로 이루어진 집합인스턴스는 속성값들로 이루어짐 엔터티 특징유일한 ..
최장 공통 문자열(Longest Common  Subsequence)두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제다이나믹 프로그래밍을 통해 해결한다.    ex) 백준 9252 LCS 2 https://www.acmicpc.net/problem/9252ACAYKPCAPCAK를 입력받았을때 dp 배열[0, 0, 0, 0, 0, 0, 0][0, 0, 1, 1, 1, 1, 1][0, 1, 1, 1, 2, 2, 2][0, 1, 2, 2, 2, 3, 3][0, 1, 2, 2, 2, 3, 3][0, 1, 2, 2, 2, 3, 4][0, 1, 2, 3, 3, 3, 4]import sysfrom collections import dequest1=[" "]st2=[" "]st1.ex..
✨서로소 집합(Disjoin-set)공통 원소가 없는 두개 이상의 집합   ✨유니온 파인드(Union-Find)서로소 집합에 대해 union,find 연산을 수행하는 알고리즘Union:두 개의 집합을 하나의 집합으로 병합Find:원소가 어떤 집합에 속해있는지를 판단       EX) 백준 1717 집합의 표현https://www.acmicpc.net/problem/1717   import syssys.setrecursionlimit(1000000)def getparent(n): if(dic[n]==n):return n else: dic[n]=getparent(dic[n]) return dic[n]def unionparent(a,b): n1=getparent(a)..
✨이진탐색(Binary Search)정렬된 리스트에서 특정한 값의 위치를 찾는 알고리즘처음 중간의 값을 임의의 값으로 선택하여, 그 값과 찾고자 하는 값의 크고 작음을 비교하는 방식     ✨Python 코드 def binarySearch(array, value, low, high): if low > high: return False mid = (low+high) / 2 if array[mid] > value: return binarySearch(array, value, low, mid-1) elif array[mid]      ✨Python bisect 라이브러리import bisectbisect_left(literable, value) # 왼쪽 인덱스를 구하기bisect_right(literabl..
아사_
'Computer Science' 카테고리의 글 목록 (7 Page)