-
2023.03.19
[SQLD] SQL개발자 48회 시험 후기 및 시험 준비 팁 (2023년 3월 19일)
[SQLD] SQL개발자 48회 시험 후기 및 시험 준비 팁 (2023년 3월 19일) 들어가며 오늘 SQLD 48회 시험을 보고 왔다. 간단하게 시험 후기를 적어본다. 시험 후기 난이도가 그렇게 어렵지는 않았다. SQL 자격검정 실전문제(노랭이) 보다 난이도가 쉬웠지만, SQL에서 사용되는 함수의 특징을 잘 알고 있어야 풀 수 있는 문제들이 다수 출제되었다. 기본 함수의 사용법들을 모르고, 노랭이 문제집의 문제와 답만 달달 외웠더라면 절대로 풀 수 없는 문제가 많았다. 노랭이 문제집은 SQLD와 SQLP를 준비하는 사람들을 위한 문제집이기 때문에 문제의 난이도가 높을 수 밖에 없다. 따라서 너무 어렵다고 포기하지 말고, 그 문제에서 사용된 SQL 함수가 어떤 원리로 동작하는지 이해하는게 중요할 것 같았..
-
2022.08.28
[SQLD] SQL개발자 단원별 내용 정리 & 실전 문제
SQL개발자(SQLD) 단원별 내용 정리 & 실전 문제 SQL개발자(SQLD) 자격증을 준비하면서 블로그에 올렸었던 글들을 한 페이지에 정리해본다. 개념 정리 인터넷 블로그, 교재 등을 보면서 정리했던 내용들 과목명 장 링크 시험 개요 https://starrykss.tistory.com/1606 SQLD 소개 https://starrykss.tistory.com/1607 SQLD 주관식(단답형) 시험 대비 https://dev-astra.tistory.com/362 데이터 모델링의 이해 데이터의 모델링 https://starrykss.tistory.com/1612 데이터 모델과 성능 https://starrykss.tistory.com/1617 SQL 기본 및 활용 SQL 기본 https://starr..
-
2022.07.06
[SQLD] 실전 문제 : 고급 SQL 튜닝
SQLD 실전 문제 : 고급 SQL 튜닝 문제 1 Q. 아래 SQL은 v_주식선물구분 바인드 변수 입력에 따라 선택적으로 주식월별시세 또는 선물월별시세 테이블에 데이터를 입력한다. 실행 정보와 같이 바인드 변수를 입력하고 쿼리를 100번(SID=100)과 200번(SID=200) 세션에서 순차적으로 수행하였을 때 200번 세션의 상태로 올바른 것은? [SQL] INSERT /*+ APPEND */ ALL WHEN :v_주식선물구분 = '주식' THEN INTO 주식월별시세(종목코드, 거래일자, 종가) WHEN :v_주식선물구분 = '선물' THEN INTO 선물월별시세(종목코드, 거래일자, 종가) SELECT a.종목코드, :v_기준일자 AS 거래일자, AVG(a.종가) AS 종가 FROM 주식일별시세 ..
-
2022.07.05
[SQLD] 실전 문제 : Lock과 트랜잭션 동시성 제어
SQLD 실전 문제 : Lock과 트랜잭션 동시성 제어 문제 1 Q. 공통 기술팀에서 개발표준 업무를 담당하는 고성능 씨가 Lock 경합에 의한 성능 저하를 최소화하기 위해 개발팀에 제시한 가이드 라인으로 가장 부적절한 것은? ① 트랜잭션의 원자성을 훼손하지 않는 선에서 트랜잭션올 가능한 짧게 정의할 것 ② 같은 데이터를 갱신하는 프로그램이 가급적 동시에 수행되지 않도록 트랜잭션을 설계할 것 ③ select 문장에 for update 문장을 사용하지 말 것 ④ 온라인 트랜잭션을 처리하는 DML 문장을 1순위로 튜닝함으로써 조건절에 맞는 최적의 인덱스를 제공할 것 더보기 정답 : ③ 해설 : for update 구문을 반드시 사용해야 할 경우가 있는데, 성능을 이유로 사용을 못하게 하면 데이터 정합성을 해..
-
2022.07.02
[SQLD] 실전 문제 : 아키텍처 기반 튜닝 원리
SQLD 실전 문제 : 아키텍처 기반 튜닝 원리 문제 1 Q. 다음 중 데이터베이스 연결(Conneection)과 관련된 설명으로 가장 부적절한 것은? ① 데이터베이스 서버와 클라이언트 간 연결 상태를 유지하면 서버 자원을 낭비하게 되므로 동시 사용자가 많은 OLTP 환경에서는 SQL 수행을 마치자마자 곧바로 연결(Connection)을 닫아주는 것이 바람직하다. ② 연결(Connection) 요청에 대한 부하는 쓰레드(Thread) 기반 아키텍처 보다 프로세스 기반 아키텍처에서 더 심하게 발생한다. ③ 전용 서버(Dedicated Server) 방식으로 오라클 데이터베이스에 접속하면 사용자가 데이터베이스 서버에 연결 요청을 할 때마다 서버 프로세스(또는 쓰레드)가 생성된다. ④ 공유 서버(Shared ..
-
2022.06.30
[SQLD] 실전 문제 : SQL 활용 ①
SQLD 실전 문제 : SQL 활용 ① 문제 1 Q. 다음 중 순수 관계 연산자에 해당하지 않는 것은? ① SELECT ② UPDATE ③ JOIN ④ DIVIDE 더보기 정답 : ② 해설 : 순수 관계 연산자에는 SELECT, PROJECT, JOIN, DIVIDE 가 있다. ※ 순수 관계 연산자와 SQL 문장 비교 - SELECT 연산은 WHERE 절로 구현 - PROJECT 연산은 SELECT 절로 구현 - (NATURAL) JOIN 연산은 다양한 JOIN 기능으로 구현 - DIVIDE 연산은 현재 사용되지 않음. 문제 2 Q. 다음 중 아래 데이터 모델을 참고하여 설명에 맞게 올바르게 작성한 SQL 문장을 2개 고르시오. [설명] 우리는 매일 배치작업을 통하여 고객에게 추천할 컨텐츠를 생성하고 고..
-
2022.06.25
[SQLD] 실전 문제 : SQL 기본 ②
SQLD 실전 문제 : SQL 기본 ② 문제 41 Q. 다음 중, 아래와 같은 2건의 데이터 상황에서 SQL의 수행 결과로 가장 적합한 것은? (단, 이해를 돕기 위해 ↓는 줄바꿈을 의미 → 실제 저장값이 아님, CHR(10) : ASCII 값 → 줄바꿈을 의미) SELECT SUM(CC) FROM ( SELECT(LENGTH(C1) - LENGTH(REPLACE9C1, CHR(10))) + 1) CC FROM TAB 1 ) ① 2 ② 3 ③ 5 ④ 6 더보기 정답 : ③ 해설 : 라인수를 구하기 위해서 함수를 이용해서 작성한 SQL이다. - LENGTH : 문자열의 길이 반환하는 함수 - CHR : 주어진 ASCII 코드에 대한 문자를 반환하는 함수 (CHR(10) : 줄바꿈) - REPLACE : 문..
-
2022.06.25
[SQLD] 실전 문제 : SQL 기본 ①
1
SQLD 실전 문제 : SQL 기본 ① 문제 1 Q. 다음 중 데이터 제어어(DCL)에 해당하는 명령어는? ① INSERT ② RENAME ③ COMMIT ④ REVOKE 더보기 정답 : ④ 해설 : 데이터 제어어(DCL: Data Control Language)에는 GRANT, REVOKE가 있다. ※ SQL 문장들의 종류 - 데이터 조작어(DML: Data Manipulation Language) : SELECT, INSERT, UPDATE, DELETE - 데이터 정의어(DDL : Data Definition Language) : CREATE, ALTER, DROP, RENAME - 데이터 제어어(DCL : Data Control Language) : GRANT, REVOKE - 트랜잭션 제어어(T..
-
2022.06.23
[SQLD] 실전 문제 : 데이터 모델과 성능
SQLD 실전 문제 : 데이터 모델과 성능 문제 1 Q. 다음 중 성능 데이터 모델링에 대한 설명으로 가장 부적절한 것은? ① 성능이 저하된 결과를 대상으로 데이터 모델 보다는 문제 발생 시점의 SQL을 중심으로 집중하여 튜닝을 한다. ② 데이터의 증가가 빠를수록 성능 저하에 따른 성능 개선 비용은 증가한다. ③ 데이터 모델은 성능을 튜닝하면서 변경이 될 수 있는 특징이 있다. ④ 분석/설계 단계에서 성능을 고려한 데이터 모델링을 수행할 경우, 성능 저하에 따른 Rework 비용을 최소화 할 수 있는 기회를 가지게 된다. 더보기 정답 : ① 해설 : 문제 발생 시점의 SQL을 중심으로 집중 튜닝하는 것은 성능 데이터 모델링과 무관한 내용이다. ※ 성능 데이터 모델링이란? 데이터베이스 성능 향상을 목적으로..
-
2022.06.21
[SQLD] 실전 문제 : 데이터 모델링의 이해
SQLD 실전 문제 : 데이터 모델링의 이해 문제 1 Q. 모델링은 현실세계에 대해서 표현하는 것으로 이해할 수 있다. 다음 중 모델링의 특징으로 가장 부적절한 것은? ① 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가질 수 있음. ② 시스템 구현만을 위해 진행하는 사전단계의 작업으로서 데이터베이스 구축을 위한 사전작업의 의미가 있음. ③ 복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 하는 단순화의 의미를 가지고 있음. ④ 애매모호함을 배제하고 누구나 이해가 가능하도록 정확하게 현상을 기술하는 정확화의 의미를 가짐. 더보기 정답 : ② 해설 : 모델링은 단지 시스템 구현만을 위해 수행하는 작업(Task)이 아니며, 시스템 구현을 포함한 업무 분석 및 업무 형상화를 하는 목적도 있다..
-
2022.05.06
[정보처리기사 실기] 핵심 키워드 정리 - 1
9
핵심 키워드 정리 - 1 시험장에 들어가기 전, 빠르게 훑어볼 내용을 정리해본다. 01. 요구사항 확인 소프트웨어 생명주기 모델(SDLC; Software Development Life Cycle) 소프트웨어 생명주기 : 시스템의 요구분석부터 유지보수까지 전 공정을 체계화한 절차 시스템이 개발될 때부터 운용과 유지보수를 거쳐 생애를 마칠 때까지 어떠한 순서를 밟는지에 대한 작업 프로세스를 모델화한 것 프로세스 요구사항 분석 -> 설계 - > 구현 -> 테스트 -> 유지보수 모델 종류 : 폭프나반 폭포수 모델(Waterfall Model) 소프트웨어 개발 시 각 단계를 확실히 마무리 지은 후에 다음 단계로 넘어가는 모델 (고전적 생명주기 모형) 절차 : 타당성 검토 -> 계획 -> 요구사항 분석 -> 설계..
-
2022.04.26
[정보처리기사 실기] 데이터베이스 기출 문제 정리 (2017년~2022년)
5
데이터베이스 기출 문제 정리 (2017년~2022년) 정보처리기사 실기 기출 문제 중에서 데이터베이스(Database)와 관련된 문제를 정리해 본다. SQL(Structed Query Language) 이 문제들은 복원을 한 것으로, 실제 출제된 문제와 다를 수 있다. 2017년 1회 문제 1 Q. 데이터베이스 시스템에서 데이터의 입력, 갱신, 삭제 등의 이벤트(Event)가 발생할 때마다 자동적으로 수행되는 사용자 정의 프로시저가 무엇인지 쓰시오. 더보기 트리거(Trigger) 문제 2 Q. 트랜잭션의 특성에는 원자성, 일관성, 독립성, 영속성이 있다. 이중에서 일관성과 영속성의 개념을 간단히 서술하시오. 더보기 일관성 : 트랜잭션 수행이 성공적으로 완료되면 언제나 일관성 있는 데이터베이스 상태로 반환..
-
2022.03.02
[정보처리기사 실기] 08. SQL 응용
08. SQL 응용 ※ ISO/IEC 9075 기준 (1) SQL - DDL DDL(Data Define Language, 데이터 정의어) DB 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어 번역한 결과가 데이터 사전(Data Dictionary)이라는 특별한 파일에 여러 개의 테이블로 저장된다. DDL의 3가지 유형 명령어 기능 CREATE SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의함. ALTER TABLE에 대한 정의를 변경하는 데 사용함. DROP SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 삭제함. CREATE SCHEMA 스키마를 정의하는 명령문 스키마(Schema) : 데이터베이스와 구조와 제약 조건에 관한 전..
-
2022.01.20
[SQLD] SQL 최적화의 원리
[SQLD] SQL 최적화의 원리 ① 옵티마이저(Optimizer)의 실행 계획 옵티마이저(Optimizer) SQL의 실행 계획을 수립하고 SQL을 실행하는 데이터베이스 관리 시스템의 소프트웨어 동일한 결과가 나오는 SQL도 어떻게 실행하느냐에 따라서 성능이 달라진다. 옵티마이저의 실행 계획은 SQL 성능에 아주 중요한 역할을 한다. 옵티마이저 특징 옵티마이저는 데이터 딕셔너리(Data Dictionary)에 있는 오브젝트 통계, 시스템 통계 등의 정보를 사용해서 예상되는 비용을 산정한다. 옵티마이저는 여러 개의 실행 계획 중에서 최저비용을 가지고 있는 계획을 선택해서 SQL을 실행한다. 옵티마이저의 필요성 SQL 개발자가 작성한 SQL문을 어떻게 실행하느냐에 따라 성능이 달라진다. 예 먼저 테이블을 ..
-
2022.01.19
[Oracle] 온라인 SQL (Oracle Live SQL)
[Oracle] 온라인 SQL (Oracle Live SQL) 바로가기 : Oracle Live SQL Oracle Live SQL 1,064,868 scripts, 4,334 likes, 1,051 public scripts, 6,585 new scripts created in the last 7 days. livesql.oracle.com 컴퓨터에 SQL 프로그램을 설치할 필요 없이 온라인에서 실습을 할 수 있다. 사용하기 위해서는 회원가입을 해야 한다. 오랫동안 사용하지 않으면 세션이 만료되므로 주의해야 한다.
-
2022.01.19
[SQLD] SQL 활용
[SQLD] SQL 활용 ① 조인(Join) EQUI(등가) 조인 (교집합) (1) EQUI(등가) 조인 조인 : 여러 개의 릴레이션을 사용해서 새로운 릴레이션을 만드는 과정 조인의 가장 기본은 교집합을 만드는 것이다. 2개의 테이블 간에 일치하는 것을 조인한다. EQUI 조인은 테이블과 테이블에서 DEPTNO 칼럼을 사용하여 같은 것을 조인한다. 사용 예 SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; EQUI 조인은 '='을 사용해서 2개의 테이블을 연결한다. SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO AND EMP.ENAME LIKE '임%' /* 조인문에 추가 조건 및 정렬을 할 수 있음. ..
-
2022.01.18
[SQLD] SQL 기본
[SQLD] SQL 기본 ① 관계형 데이터베이스(Relation Database) 관계형 데이터베이스(Relation Database) (1) 관계형 데이터베이스의 등장 관계형 데이터베이스는 1970년대 E. F. Codd 박사의 논문에서 처음으로 소개된 데이터베이스이다. 관계형 데이터베이스는 릴레이션(Relation)과 릴레이션의 조인 연산을 통해서 합집합, 교집합, 차집합 등을 만들 수 있다. 현재 기업에서 가장 많이 사용하는 데이터베이스 관리 시스템 Oracle, MS-SQL, MySQL, Sybase 등 (2) 데이터베이스와 데이터베이스 관리 시스템의 차이점 데이터베이스는 데이터를 어떠한 형태의 자료 구조(Data Structure)로 사용하느냐에 따라 나누어진다. 데이터베이스의 종류 계층형 트리..
-
2022.01.17
[SQLD] 데이터 모델과 성능
[SQLD] 데이터 모델과 성능 ① 정규화 정규화(Normalization) 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 위한 방법이며, 데이터를 분해하는 과정 데이터 중복을 제거하고 데이터 모델의 독립성을 확보하기 위한 방법 정규화를 수행하면 비즈니스에 변화가 발생하여도 데이터 모델의 변경을 최소화할 수 있다. 정규화는 제1정규화부터 제5정규화까지 있지만, 실질적으로는 제3정규화까지만 수행한다. 예) 정규화를 하지 않아 이상현상이 존재하는 모델 위의 테이블은 정규화를 수행하지 않은 것으로, 테이블과 테이블을 하나로 합쳐둔 것이다. 새로운 직원이 추가 되는 경우 정보가 없으면 부서코드를 임의의 값으로 넣어야 한다. 불필요한 정보가 함께 추가됨. 새로운 '총무부'가 추가 되어야 할 경..
-
2022.01.14
[SQLD] 데이터 모델링(Data Modeling)
[SQLD] 데이터 모델링(Data Modeling) ① 데이터 모델링의 이해 데이터 모델링 현실세계를 데이터베이스로 표현하기 위해서 추상화 한다. 데이터 모델링을 하기 위해서는 고객과의 의사소통을 통해 고객의 업무 프로세스를 이해해야 한다. 고객의 업무 프로세스를 이해한 후, 데이터 모델링 표기법을 사용해서 모델링을 한다. 고객이 쉽게 이해할 수 있도록 복잡하지 않게 모델링해야 한다. 고객의 업무 프로세스를 추상화하고, 소프트웨어를 분석/설계하면서 점점 더 상세해진다. 고객의 비즈니스 프로세스를 이해하고 비즈니스 프로세스의 규칙을 정의한다. 정의된 비지니스 규칙을 데이터 모델로 표현한다. 데이터 모델링의 특징 데이터 모델링은 추상화해야 한다. 추상화는 공통적인 특징을 찾고 간략하게 표현한다. 데이터 모..
-
2022.01.13
국가공인 SQL 개발자(SQLD) 자격증 시험 개요
국가공인 SQL 개발자(SQLD) 자격증 시험 개요 과목 및 내용 SQL 개발자 자격시험의 과목은 총 2과목으로 구성되어 있으며, 데이터 모델링의 이해 과목을 바탕으로 SQL 기본 및 활용을 수행하는 능력을 검정한다. 필기 과목명 장 절 데이터 모델링의 이해 데이터 모델링의 이해 데이터모델의 이해 엔터티 속성 관계 식별자 데이터 모델과 성능 정규화와 성능 반정규화와 성능 대용량 데이터에 따른 성능 DB 구조와 성능 분산DB 데이터에 따른 성능 SQL 기본 및 활용 SQL 기본 정보 요구 사항 DDL DML TCL WHERE 절 FUNCTION GROUP BY, HAVING 절 ORDER BY 절 조인 SQL 활용 표준조인 집합연산자 계층형 질의 서브쿼리 그룹 함수 윈도우 함수 DCL 절차형 SQL SQL..
-
2021.11.25
[컴퓨터활용능력 1급 실기] 쿼리(Query) (액세스)
쿼리(Query) (액세스) 개념 데이터베이스에서 특정한 테이블에 특정한 조건을 주어 검색하는 기능 데이터베이스에서 기본적이면서도 매우 중요한 요소 테이블을 데이터베이스 자체라고 한다면, 쿼리는 이 데이터베이스에서 필요한 것만을 뽑아내어 가공하는 형태라고 할 수 있음. 만들어진 쿼리는 테이블과 동일하게 폼이나 보고서에서 레코드 원본으로 사용됨. 결과를 표시하는 데 필요한 필드만 하단의 그리드 라인에 추가함. 상위 값 속성 지정한 조건을 만족하는 특정 수의 레코드 또는 특정 비율의 레코드를 반환하는 속성 상위 몇 개(TOP 10) 또는 상위 몇 %(TOP 10%)로 지정함. SQL 보기에서 SELECT 문 다음에 'TOP n', 'TOP n%'를 직접 입력해도 됨. 지정한 조건을 만족하는 동일한 값이 있을..
-
2021.06.14
데이터베이스 일반 : 도메인 계산 함수
데이터베이스 일반 도메인 계산 함수 레코드 집합에 대한 통계를 구해주는 함수 인수에는 다음을 사용할 수 있음. 필드 이름 폼의 컨트롤 상수 함수 도메인은 테이블, 쿼리를 포함함. 도메인 함수에서 사용되는 각 인수는 각각을 큰따옴표(")로 묶어줘야 함. 문자열을 연결할 때에는 &를 사용함. 도메인 계산 함수 사용 형식 기본 형식([]를 생략해도 됨.) =DLOOKUP("[필드]", "[도메인(테이블/쿼리]", "조건") 예: 테이블 : 거래처, 필드 : 거래처명, 조건 : 거래처코드가 A1 (문자 형식) =DLOOKUP("거래처명", "거래처", "거래처코드='A1'") 예: 테이블 : 거래처, 필드 : 거래처명, 조건 : 거래처코드가 1 (숫자 형식) =DLOOKUP("거래처명", "거래처", "거래처코..
-
2021.06.14
데이터베이스 일반 : 기타 질의
데이터베이스 일반 기타 질의 크로스탭 질의 테이블의 특정 필드의 요약값(합계, 개수, 평균 등)을 표시하고 그 값들을 그룹별로, 한 집합은 데이터시트의 왼쪽(행)에 또 한 집합은 데이터시트의 위쪽(열)에 나열함. 열과 행 방향의 표 형태로 숫자 데이터의 집계를 구함. 스프레드시트의 피벗 테이블 과 유사함. 행 머리글로 사용될 필드는 여러 개를 지정할 수 있지만, 열 머리글로 사용될 필드는 하나만 지정할 수 있음. 매개 변수 질의 쿼리를 실행하면 매개 변수를 입력받을 수 있는 대화상자가 나타나는 질의 매개 변수 입력 대화상자에 검색조건으로 사용할 값이나 필드에 삽입할 정보를 입력받아 질의를 수행함. 2가지 이상의 정보를 물어보는 질의를 디자인하여 검색할 수도 있음. 매개 변수 대화상자에 표시할 텍스트는 매..
-
2021.06.14
데이터베이스 일반 : 실행 질의
데이터베이스 일반 실행 질의 삽입(INSERT)문 테이블에 레코드를 추가할 때 사용함. 값을 직접 지정하여 추가할 수도 있고, 다른 테이블의 레코드를 추출하여 추가할 수도 있음. 직접 입력하여 추가히기 INSERT INTO 테이블 이름(필드이름1, 필드이름2, ...) VALUES (필드값1, 필드값2, ...) 테이블로부터 추가하기 INSERT INTO 테이블 이름(필드이름1, 필드이름2, ...) SELECT 필드 이름 FROM 테이블 이름 WHERE 조건 여러 개의 레코드를 동시에 추가할 수 있지만, 한 번에 하나의 테이블에만 추가할 수 있음. 레코드의 전체 필드를 추가할 경우에는 필드 이름을 생략할 수 있음. 수정(UPDATE)문 UPDATE 테이블 이름 SET 필드이름1=값1, 필드이름2=값2,..
-
2021.06.14
데이터베이스 일반 : 조인(JOIN)
데이터베이스 일반 조인(JOIN) 2개 이상의 테이블에 나누어져 저장된 정보를 1개의 테이블처럼 사용하기 위해 연결하는 방법을 정의한 것 조인에 사용되는 기준 필드의 데이터 형식은 동일하거나 호환되어야 함. 여러 개의 테이블을 조인할 경우, 접근 속도의 향상을 위해 필드 이름 앞에 테이블 이름을 마침표(.)로 구분하여 사용함. 보통 연결될 양 테이블 간에 관계가 설정되어 있어야 하지만, 관계가 설정되지 않아도 조인을 수행할 수는 있음. 조인의 종류 내부 조인(Inner Join) SELECT 필드이름 FROM 테이블이름1 INNER JOIN 테이블이름2 ON 테이블이름1.필드이름=테이블이름2.필드이름 가장 일반적인 조인의 형태 관계가 설정된 두 테이블에서 조인된 필드가 일치하는 행만 질의에 포함됨. 왼쪽..
-
2021.06.14
데이터베이스 일반 : 특수 연산자를 이용한 질의 / 하위 질의
데이터베이스 일반 특수 연산자를 이용한 질의 / 하위 질의 IN 필드의 값이 IN 연산자의 인수로 지정된 값과 같은 레코드만 검색하는 것 OR 연산자를 수행한 결과와 같음. 문법 WHERE 필드 또는 필드를 나타내는 식 IN(값1, 값2, ...); BETWEEN 필드의 값이 BETWEEN 연산자의 범위로 지정된 값 이내에 포함되는 레코드만 검색하는 것 AND 연산자를 수행한 결과와 같음. 문법 WHERE 필드 또는 필드를 나타내는 식 BETWEEN 값1 AND 값2; LIKE 대표 문자를 이용해 필드의 값이 패턴과 일치하는 레코드만 검색함. 문법 WHERE 필드 또는 필드를 나타내는 식 LIKE '문자 패턴'; NOT 필드의 값이 NOT 다음에 기술한 연산자의 결과에 포함되지 않는 레코드만 검색함. 문..
-
2021.06.14
데이터베이스 일반 : 주요 함수
데이터베이스 일반 주요 함수 AVG(필드 이름) 필드의 평균을 구함. SUM(필드 이름) 필드의 합계를 구함. COUNT(필드 이름) 해당 필드를 기준으로 비어있지 않은 레코드 수를 구함. MIN(필드 이름) 필드에서의 최소값을 구함. MAX(필드 이름) 필드에서의 최대값을 구함. NOW() 현재 날짜와 시간을 표시함. LEN(필드 이름) 필드의 문자열 길이를 반환함. ROUND(필드 이름, 소수자릿수) 필드의 숫자를 지정한 자릿수로 반올림함. LEFT(문자열, 자릿수) 왼쪽에서 주어진 자릿수만큼 추출함. MID(문자열, 자릿수) 시작 위치에서 주어진 자릿수만큼 추출함. RIGHT(문자열, 자릿수) 오른쪽에서 주어진 자릿수만큼 추출함. STRCOMP(문자열1, 문자열2) 문자열1과 문자열2를 비교하여 같..
-
2021.06.14
데이터베이스 일반 : 그룹 지정
데이터베이스 일반 그룹 지정 SELECT [DISTINCT] 필드이름 FROM 테이블이름 [WHERE 조건식] [GROUP BY 필드이름] [HAVING 그룹조건식] GROUP BY 절 특정 필드를 기준으로 그룹화하여 검색할 때 사용함. HAVING 그룹에 대한 조건을 지정할 때 사용함. 일반적으로 GROUP BY는 다음과 같은 그룹 함수와 함께 사용함. SUM AVG COUNT WHERE절과 HAVING절의 차이점 WHERE는 개개의 레코드에 조건을 지정하는 것 HAVING은 그룹에 대해 조건을 지정하는 것
-
2021.06.14
데이터베이스 일반 : 정렬
데이터베이스 일반 정렬 SELECT [DISTINCT] 필드이름 FROM 테이블이름 [WHERE 조건식] [ORDER BY 필드이름 정렬방식, ...] ORDER BY문 특정 필드를 기준으로 레코드를 정렬하여 검색할 때 사용함. 정렬 방식 종류 ASC : 오름차순 DESC : 내림차순 정렬 방식을 지정하지 않으면 기본적으로 오름차순(ASC) 정렬이 수행됨. 오름차순으로 정렬할 경우 다음 순으로 정렬됨. 숫자 한글 영문(소문자 -> 대문자)
-
2021.06.14
데이터베이스 일반 : 단순 조회 질의 - 기본 구문
데이터베이스 일반 단순 조회 질의 - 기본 구문 SELECT [DISTINCT] 필드이름 FROM 테이블이름 [WHERE 조건식] SQL문에서는 대소문자를 구분하지 않음. 여러 줄에 나누어 입력이 가능함. 마지막에 ;을 입력해 SQL문의 끝임을 알림. SELECT문에 DISTINCT를 입력하면 검색의 결과가 중복되는 레코드는 검색 시 한 번만 표시됨. 필드이름 테이블의 모든 필드를 검색할 경우에는 필드 이름 대신 *를 입력함. 특정 필드만 검색할 경우 필드와 필드는 쉼표(,)로 구분하여 표시함. WHERE 조건식 조건을 입력하여 특정 조건에 맞는 레코드만 검색할 때 사용함. 2개의 테이블을 지정하여 레코드를 검색하려면 두 테이블을 콤마(,)로 연결해야 함.