[데이터베이스 & SQL 첫걸음] 4주차 공부

데이터베이스의 운영비용

운영비용

기간이 정해진 비용으로 월이나 연 단위로 비용 계산.
대표적으로 핸드폰 통신 요금.
데이터베이스에서의 운영비용이란 기술지원 비용

기술지원

데이터베이스를 사용하다 보면 버그나 이해할 수 없는 동작이 발생함. 기술적인 Q&A부터 긴급 수정 프로그램(패치) 배포까지 데이터베이스 개발자의 지원 없이는 문제를 해결하기 어려움.
기술지원 서비스를 이용할 때 서비스의 수준(서비스 레벨)은 제품 구매 시점이 아닌 제품의 배포 시점을 기준으로 해서 시간이 경과함에 따라 낮아짐. 서비스 종료하는 타이밍을 EOSL(End of Service Life)라고 함.

초기비용과 운영비용의 조합

3가지 조합 기능
  • 초기비용O + 운영비용O

  • 초기비용O + 운영비용X : Oracle, SQL server 등 상용 시스템 상에서 가장 일반적.

  • 초기비용X + 운영비용O : 라이선스료를 지급하지 않고 기술지원 비용만 발생. 대표적으로, 오픈소스 소프트웨어의 경우. Linux OS의 하나인 Red Hat, MySQL.

임대 모델과 구매 모델

구분임대구매
장점 - 정해진 초기 비용 없이 도입 가능
- 시범 도입 가능
- 불필요할 때 바로 사용 중단 가능
- 타 데이터베이스로 마이그레이션이 쉬움
- 반영구적으로 이용 가능
- 전체비용의 변동 위험이 적고 장기적인 계획을 세울 수 있음
단점 - 이용 기간이 길면 전체비용이 구매 비용보다 높아질 가능성이 있음
- 서비스를 제공하는 벤더의 도산이나 사업 철수로 서비스를 정지하면 이용할 수 없게 될 위험이 있음
- 장기적으로 요금인상 등의 비용 변경 요소가 있음
- 초기비용이 필요
- 시범 도입 불가능
- 타 데이터베이스로 마이그레이션이 어려움

초기 비용의 트릭

전체비용이 동일하더라도 사람의 마음은 초기비용이 낮은 쪽을 이득으로 느낌.

조건 조합하기

AND, OR, NOT

조건식1 AND 조건식2
조건식1 OR 조건식2
NOT 조건식
AND

교집합, 논리곱 계산.
SELECT * FROM sample24 WHERE a<>0 AND b<>0;

OR

합집합, 논리합 계산.
SELECT * FROM sample24 WHERE a<>0 OR b<>0;

AND와 OR은 우선순위를 주의할 것. AND가 OR에 비해 우선순위가 높다.

NOT

오른쪽에 지정한 조건식의 반대 값을 반환.
SELECT * FROM sample24 WHERE NOT(a<>0 OR b<>0);

패턴 매칭에 의한 검색

= 연산자로 검색하는 경우에는 셀의 데이터 값이 완전히 동일한 지를 비교.
특정 문자나 문자열이 포함되어 있는 지를 검색하고 싶은 경우에 '패턴 매칭/부분 검색'을 사용.

LIKE로 패턴 매칭하기

열 LIKE '패턴'
왼쪽에는 매칭 대상을 지정, 오른쪽에는 패턴을 문자열로 지정. 수치형 상수는 지정할 수 없음. 메타문자도 사용 가능(%_)

%_ '와일드 카드'라고도 불리는 메타문자는 패턴 매칭 시 '임의의 문자 또는 문자열'에 매치하는 부분을 지정하기 위해 쓰이는 특수 문자. 퍼센트(%)는 임의의 문자열의 의미. 언더스코어(_)는 임의의 문자 하나를 의미. 패턴을 정의할 때는 메타 문자 여러 개 사용 가능.
*는 LIKE에서 사용할 수 없음.

  1. 전방 일치의 경우, SQL%
    문자열 앞쪽에 지정한 문자와 일치
  2. 후방 일치의 경우, %SQL
  3. 중간 일치의 경우, %SQL%

%는 빈 문자열과도 매치함.

LIKE로 '%'나 '_' 그 자체 검색하기

LIKE로 %를 검색하는 경우에는'\%','_'와 같이 이스케이프 문자를 붙임.
%\%%
% : 메타문자 % = 임의의 문자열
\% : % 그 자체 문자
% : 메타문자 % = 임의의 문자열

문자열 상수 '의 이스케이프

'을 문자열 상수 안에 포함할 경우에는 '를 2개 연속해서 기술.

좋은 웹페이지 즐겨찾기