Certificate/SQL 14

[sqld 시험] 52회 sqld 시험 합격 후기

이 점수로 합격 후기를 적어도 되는가 싶기는 한데,, 어찌저찌 지난 3월 9일에 열린 sqld 시험에서 합격을 하였다. 사실 자격증 자체의 난이도가 높지 않기에, 원하는 분들은 공부 열심히 하면 가질 수 있는 자격증이지만 나에게는 의미가 나름 깊다. 그 이유는, 1) sqld 한 번 떨어지고 재시험이기 때문 2) 학부수업때 들었던 데이터베이스과목에서 무척 낮은 점수를 받았기에 자격지심이 있다고 생각(낮은 점수를 받은 사유: 복수전공 첫학기에 어려운 프로젝트랑 연결시키는 데베과제가 나와서 의욕을 상실함, 그로 인해 흥미도 잃음) 이러한 이유로 나한테는 sqld 합격의 기쁨은, 꽤나 높다고 할 수 있다. 지난 51회 시험에서는 1단원을 7문제 이상 맞추었는데, 쿼리를 거의 못 풀어서 40점대 점수를 맞았다...

Certificate/SQL 2024.04.02

[sql] Rollup, Cube, Grouping sets(집계함수)

집계함수인 ROLLUP, CUBE, GROUPING SETS이다. ROLLUP은 계층적인 요약을 생성한다. CUBE는 모든 가능한 조합에 대한 요약을 생성한다. GROUPING SETS는 사용자가 정의한 여러 그룹핑 세트를 지정하여 집계한다. 공통점은 ROLLUP, CUBE, GROUPING SETS 모두 집계함수의 공통점을 가지며, group by 절에서 사용된다는 점이다. 차이점으로는, cube는 모든 가능한 조합을 출력하는 데에 반해, rollup 은 단순히 계층적인 요약 기능만 제공한다. grouping sets는 사용자의 정의가 되어야 집계되는 형태이다.

Certificate/SQL 2023.11.23

[sql] 데이터베이스의 view 기능

데이터베이스 상에서 View는 기존의 테이블로부터 유도된 가상의 테이블로서, 입력, 수정, 삭제가 불가능하다는 제약을 가지고 있다. 그러나 이러한 특성 덕분에 보안성은 향상되는 이점을 가지고 있다. view의 작동 순서는 다음과 같다. 우선 사용자가 select문을 이용하여 테이블을 조회하고 view 생성을 위한 테이블을 생성한다(실체 테이블로부터 가상의 테이블을 만드는 구조라고 이해하면 될 것 같다.) 그리고 쿼리를 실행시켜 테이블로부터 쿼리 결과값을 얻는다.

Certificate/SQL 2023.11.11

[sql] join에 대하여(Natural join, inner join, Outer join, Cross join)

join은 natural join, inner join, outer join, cross join으로 나눈다. natural join은 테이블 칼럼명이 같으면 모두 join하는 방식이다. Inner join은 집합의 교집합과 같은 역할을 하며, 공통된 부분만 추출하여 보여준다. outer join은 세 가지로 나뉘는데, 기준이 왼쪽이고 다른 테이블이 붙는 경우 left outer join, 마찬가지로 기준이 오른쪽일 경우는 right outer join이 된다. left , right, inner join을 모두 수행하기를 원하는 경우 full outer join을 이용한다. cross join은 가능한 모든 조합에 대해 join이 일어나기를 원할 때 사용한다.

Certificate/SQL 2023.11.10

[sql] 반정규화에 대하여 (분류)

반정규화: 성능 향상을 위해 정규화를 포기한다. 그러나 데이터 무결성이 유지되지 않기 때문에 제한적 사용이 요구되는 정규화 과정 반정규화는 두 가지로 나뉘는데, (1) 테이블 반 정규화와 (2) 컬럼 반정규화이다. (1) 테이블 반정규화 - 테이블 병합 : 1:1관계, 1:M관계, 슈퍼 서브 타입 테이블 병합 - 테이블 분할: 수직분할, 수평분할 - 테이블 추가: 중복테이블 추가, 통계테이블 추가, 이력테이블 추가, 부분테이블 추가 (2) 컬럼 반정규화 - 중복 컬럼추가 - 파생 컬럼추가 - 이력테이블 컬럼 추가

Certificate/SQL 2023.11.04

[sql] 정규화(1NF,2NF,3NF)에 대하여

https://imsunbow.tistory.com/28 [sql] 정규화/반정규화 (개념과 문제점에 관하여) [정규화] 데이터의 일관성, 최소한의 데이터 중복, 최소한의 데이터 유연성을 위한 방법 정규화된 모델은 테이블이 분해됨. 테이블이 분해되면 직원 테이블과 부서 테이블 간에 부서코드로 조인 imsunbow.tistory.com 정규화와 반정규화에 관한 개념과 문제점에 대해 알아보았다. 이번 포스팅에서는 정규화의 과정에 대해 조금 더 자세하게 알아보려고 한다. [제 1정규화-1NF] - 원자성 모든 속성은 반드시 하나의 값만 가져야 한다. >> 다중 값을 가지거나 반복 그룹을 가질 경우에 제1정규형 위배 [제 2정규화-2NF] - 부분 종속 모든 속성은 반드시 모든 기본키에 종속되어야 한다. (기본..

Certificate/SQL 2023.11.02

[sql] TCL(Transaction Control Language)에 관하여(의미, 예시 중심으로)

[Transaction이란?] 트랜젝션(Transaction)이란 밀접히 관련되어 분리될 수 없는 한 개 이상의 데이터베이스 조작을 의미한다. [Transaction의 특성] 트랜젝션은 다음 4가지 특성을 만족해야 한다. - 원자성: 트랜젝션에서 정의된 연산들은 모두 성공적으로 실행되거나 전혀 실행되지 않아야 함(all or nothing) - 일관성: 트랜젝션이 실행되기 전의 데이터베이스 내용이 잘못되어 있지 않다면 트랜젝션이 실행된 이후에도 데이터베이스의 내용에 잘못이 있으면 안됨 - 고립성: 트랜젝션이 실행되는 도중에 다른 트랜젝션의 영향을 받아 잘못된 결과를 만들어서는 안됨 - 지속성: 트랜젝션이 정상적으로 수행되면 갱신한 데이터베이스의 내용은 영구적으로 저장됨 [TCL 언어] Transactio..

Certificate/SQL 2023.11.02

[sql] 정규화/반정규화 (개념과 문제점에 관하여)

[정규화] 데이터의 일관성, 최소한의 데이터 중복, 최소한의 데이터 유연성을 위한 방법 정규화된 모델은 테이블이 분해됨. 테이블이 분해되면 직원 테이블과 부서 테이블 간에 부서코드로 조인(join)을 수행하며 하나의 합집합으로 만들 수 있음 정규화를 하면 중복 데이터가 제거됨(불필요한 데이터를 입력하지 않아도 되기 때문) [정규화의 특징] 조인으로 인하여 성능이 저하되는 문제를 반정규화로 해결 가능 반정규화는 데이터를 중복시키기 때문에 또 다른 문제점을 발생시킴 따라서 정규화와 반정규화는 trade-off 관계에 있다고 볼 수 있음(반정규화는 데이터중복 허용해서 join 줄임)' [반정규화] 데이터베이스의 성능 향상을 위하여, 데이터 중복을 허용하고 조인을 줄이는 데이터베이스 성능 향상 방법 [반정규화의..

Certificate/SQL 2023.11.01

[sql] 데이터 독립성 요소 - 스키마(schema)의 분류

데이터베이스 스키마 구조는 세 단계로 구성된다. (1) 외부 스키마 : view 단계 여러개의 사용자 관점으로 구성되는 , 개인적 DB 스키마 [keyword: 사용자 관점] (2) 개념 스키마 : 모든 사용자 관점을 통합한 조직 전체의 DB를 기술하는 것 [keyword: 통합관점] (3) 내부 스키마 : 데이터의 실질적 저장, 물리적 단계에서 데이터가 실제적으로 저장되는 방법 표현 [keyword : 물리적 저장 구조]

Certificate/SQL 2023.10.31
반응형