본문 바로가기

IT

[SQL] Union과 Union all 차이 2개 이상의 별도의 조회 쿼리 결과 값을 한번에 보고 싶을 때 UNION과 UNION ALL을 쓰게 된다. A, B라는 조회데이터 집합이 있다고 한다면 UNION은 합집합 역할을 해준다고 생각하면 된다. UNION 종류 1. UNION(UNION DISTINCT) : 중복값 제외하여 출력 (A∪B - A∩B) [일반적으로 사용하는 UNION은 UNION DISTINCT의 줄임입니다.] 2. UNION ALL : 중복 상관없이 출력 (A∪B) UNION [DISTINCT]의 경우는 내부적으로 TABLE이 비교적 작을때 UNION을 써보면 상당히 편해서 TABLE이 비교적 클때도 UNION을 자주 사용하게 되면 부하가 많이 발생한다. 따라서 중복여하가 필요없거나, 조회하고자 하는 데이터 자체가 중복될 일이 .. 더보기
ANSI 표준 ANSI SQL DBMS(Oracle, My-SQL, DB2 등등)들에서 각기 다른 SQL를 사용하므로, 미국 표준 협회(American National Standards Institute)에서 이를 표준화하여 표준 SQL문을 정립 시켜 놓은 것이다. 어디서나 통용될 수 있는 공통적인 기준 " 이라고 볼 수 있다. 이러한 ANSI는 SQL에서도 찾아볼 수 있으며, 대표적으로 JOIN 구문에서 확인할 수 있다. ANSI의 뜻 미국 국립 표준 협회(American National Standards Institute, ANSI) 미국의 산업 표준을 제정하는 민간단체이며, 국제표준화기구 ISO에 가입되어 있다. ANSI에서 제정된 표준을 ANSI라고 부르기도 한다. 1918년 AESC란 이름으로 창설되었으나,1.. 더보기
[Oracle] 형 변환 Oracle의 형변환에 대하여 알아봅시다. Oracle에서 사용하는 데이터타입 데이터 타입 데이터 타입 설명 CHAR(n) 고정 길이의 문자를 저장한다. 최댓값은 2000byte VARCHAR(n) 가변 길이의 문자를 지정한다. 최댓값은 4000byte NUMBER(p, s) 숫자 값을 저장, p는 전체자릿수로 1~38자리까지 가능하고 s는 소수점 이하 자릿수로 -84 ~ 127자리 가능 DATE 총 7Byte로 BC 4712년 1월 1일 ~ AD 9999년 12월 31일까지의 날짜 LONG 가변 길이의 문자를 저장하여 최대 2GB까지 저장 CLOB 가변 길이의 문자를 저장하여 최대 4GB까지 저장 BLOB 가변 길이의 바이너리 데이터를 최대 4GB까지 저장 형변환이란? 특정한 데이터 타입을 다른 데이터.. 더보기
DBMS(DataBase Management System)란? 데이터베이스(DataBase) 데이터베이스(DB)는 여러 사람이 공유하고 사용할 목적으로 관리되는 정보입니다. (즉, 통합 관리되는 데이터의 저장소입니다.) 데이터베이스의 특징 데이터 공유 : 많은 사람들이 데이터를 공유할 수 있습니다. 중복의 제거 : 데이터를 한 곳에 모으면서 중복되는 데이터를 제거할 수 있습니다. 데이터 통합 : 흩어져 있는 데이터를 한 곳에 모을 수 있습니다. 보안성 : 권한이 있는 관리자만이 데이터를 관리한다면 데이터의 보안을 지킬 수 있습니다. DBMS(Data Base Management System) DB를 ‘데이터의 집합’이라고 정의한다면, 이런 DB를 관리하고 운영하는 소프트웨어를 DBMS(Database Management System)라고 합니다. 또한 응용프로그램들.. 더보기
SQL(Structured Query Language)이란? SQL(Structured Query Language)은 관계형 데이터베이스에서 데이터 조작과 데이터 정의를 하기 위해 사용하는 언어이다. 즉, 독자적인 문법을 갖는 관계형 데이터 베이스(RDB)표준 언어이다. (관계형 데이터베이스는 엑셀이라고 생각하시면 간단합니다.) .SQL이 데이터베이스를 조작하는 ‘언어’이긴 하지만 일반적인 프로그래밍 언어(C, 자바, 파이썬 등)와는 조금 다른 특성을 갖습니다. ex ) select * from dept ex ) delete dept where ename = 'Anderson' 이런식의 표현이 SQL의 교육에서 자주 보는 쿼리이다. SQL은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리 및 처리하기 위해 설계된 특수 목적의 프로그래밍 언어이며 질의(.. 더보기
32bit와 64bit의 차이? 우리가 컴퓨터에서 내 PC에 들어가보면 혹은 프로그램을 설치하려고 하다보면 X86이나 X64로 표시되어 있는 것들을 본적이 있습니다. 프로그램을 설치할 때는 두 버전중에 한가지를 선택해야만 다음 단계로 넘어갈 수 있습니다. 과연 어떤것을 선택해야할까요...? 그리고 두 버전(X86과 X64)의 차이가 무엇일까요? 32Bit vs 64Bit 두가지의 차이가 무엇인지 어떤것을 선택해야 하는지 알아보기 전에 Bit의 개념부터 알아야 합니다. Bit는 CPU가 처리하는 데이터의 최소단위입니다. Bit는 Binary Digit의 약자로 0과 1로 기호로 쓰여 있습니다.(컴퓨터는 사람과 다르게 모든 데이터를 2진법으로 계산한다.) 32bit는 2의32승(4,294,967,296비트)을 의미하고 -> 컴퓨터 CPU의.. 더보기
VIEW 테이블(가상 테이블) (뷰) VIEW 테이블 뷰란 하나의 가상테이블이라고 생각하면 된다 뷰는 실제 데이터가 하드웨어에 저장되는 것은 아니지만 뷰를 통해 데이터를 관리할 수 있다. 뷰는 복잡한 Query를 얻을 수 있는 결과를 간단한 Query로 얻을 수 있게 한다. 한개의 뷰로 여러 테이블에 대한 데이터를 검색할 수 있다. 특정 평가 기준에 따른 사용자 별로 다른 데이터를 액세스 할 수 있도록 한다. VIEW의 사용 목적 보안관리를 목적으로 활용한다. (보안성) 뷰(View)를 통해 데이터의 접근을 제어 사용상의 편의를 목적으로 활용한다. (편의성) 수행속도의 향상을 목적으로 활용한다. (속도 향상) SQL의 성능을 향상시킬 목적으로 활용한다. (활용성) 임시적인 작업을 위해 활용한다. VIEW의 특징 뷰(View)를 제거하고자 할.. 더보기
[용어 정리] SOLID란? [용어 정리] SOLID란? 아무리 객체 지향 4대 특성인 캡슐화, 상속, 추상화, 다형성을 잘 한다고 해서 설계를 잘 하는것은 아니다. 물론 4대 특성의 묘미를 잘 살릴수록 설계가 좋다. 하지만 설계 원칙이라는게 엄연히 존재하고, 또 나름 중요하기 때문에 각 원칙의 맨 앞 알파벳만 따와 'SOLID'라고까지 했을까.. SOLID원칙들은 결국 자신 클래스 안에 응집도는 내부적으로 높이고, 타 클래스들 간 결합도는 낮추는 High Cohesion - Loose Coupling원칙을 객체 지향의 관점에서 도입한 것이다. 결국 모듈 또는 클래스 당 하나의 책임을 주어 더욱더 독립된 모듈(클래스)를 만들기 위함이다. 이렇게 설계된 소프트웨어는 재 사용성이 높아지고, 수정을 최소화 해도 되기 때문에 결국 유지 보.. 더보기