Select (SQL): 두 판 사이의 차이

내용 삭제됨 내용 추가됨
잔글 HotCat을 사용해서 분류:데이터베이스 모델링을(를) 삭제함, 분류:데이터 모델링을(를) 추가함
동일 항목 일본어 위키번역
2번째 줄:
 
덧붙여 "테이블"은 "표" "행"은 "레코드", "열"은 "항목"이라고 부르기도 한다.
 
==구문==
<source lang="sql">
SELECT [ALL | DISTINCT] 컬럼명 [,컬럼명...]
FROM 테이블명 [,테이블명...]
[WHERE 조건식]
[GROUP BY 컬럼명 [HAVING 조건식]]
[ORDER BY 컬럼명]
GROUP BY 컬럼명[,컬럼명...]
ORDER BY 컬럼명[,컬럼명...]
</source>
 
===SELECT 절===
SELECT 문에서 필수 구성 절. 지정 열을 설명하는 것으로, 열을 보여준다. *로 하면 모든 열이 표시된다. 또한 산술 연산자, 그룹 함수를 사용할 수 있다.
====유효성 검사====
컬럼명 유효성 검사 주된 것으로는
* 열 이름에 사용할 수 있는 문자는 영문자, 숫자 및 $, #, _ (밑줄)이 있다.
* 열 이름의 첫 글자는 영문 알파벳만 가능.
* 문자 상한는 최대 30자까지.
* 기본값은 대문자로 표시된다. 문자 등으로 표시하려면 단일 행 함수를 사용하거나, ""로 둘러 싸는 등의 처리가 필요하다.
* 각종 DBMS의 예약어는 사용할 수 없는 경우가 있다.
 
====컬럼 별칭====
: 컬럼명 [AS] 컬럼 별칭 (AS는 생략 가능)
로 컬럼을 다른 이름으로 표시할 수 있다. 단, WHERE 절, GROUP BY 절, HAVING 절은 컬럼 별칭은 없다. 또한 컬럼명 표시시 기본은 영문 대문자이다. 이것을 문자 등으로 표시할 경우 단일행 함수, 문자 함수를 사용하거나 ""로 묶어서 표시를 한다.
====ALL / DISCTINCT 지정====
* ALL --- 테이블에 동일한 데이터 행이 있는 경우에도 모든 데이터를 반환한다. 지정하지 않으면 ALL이 선택
* DISTINCT (UNIQUE) --- 테이블에 동일한 데이터 행이있는 경우 중복을 제거한 1 개만을 돌려 준다.
그룹함수는 COUNT만 사용 가능
====단일행 함수====
단일행 조작 함수에서 하나의 행에 대해 하나의 결과를 반환하는 함수. SELECT 절, WHERE 절, ORDER BY 절에서 사용할 수 있으며, 다음과 같은 종류가 있다. 또한 중첩에 제한은 없다.
* 문자 함수(CHARACTER FUNCTION)
:문자를 조작하는 함수입니다. LOWER, UPPER, INITCAP, CONCAT, SUBSTR, INSTR, LENGTH, TRIM, REPLACE 등이 있다.
* 숫자 함수(NUMBER FUNCTION)
:숫자를 조작하는 함수입니다. ROUND (반올림), TRUNC (자르기), MOD (나머지)가 있다.
* 날짜 함수(DATE FUNCTION)
:날짜를 조작하는 함수입니다.
* 데이터 형식 변환 함수.(Data Type)
:특정 데이터 형식을 특정 데이터 형식으로 변환 할 수 있다. TO_CHAR, TO_NUMBER, TO_DATE가 있다.
====그룹 함수====
그룹화를 한 행에 대해 하나의 결과를 반환하는 함수. SELECT 절 (단, GROUP BY 절에 지정된 열만) HAVING 절,​​ ORDER BY 절에서 사용할 수 있다. 중첩은 2단계까지 가능하다. 종류로는 AVG (평균), MAX (최대값), MIN (최소값), SUM (합계), COUNT (반환되는 행 수) 등이 있다.
 
====집합 연산====
여러 테이블에서 질의 결과를 참조하는 복합문을 처리하기 위한 연산자를 이용한 구문. UNION (합집합), UNION ALL (전체 집합), INTERSECT (교집합), EXCEPT(예외) ​​또는 MINUS (차집합)이 있지만, DBMS 환경에서 사용할 수 없거나 연산자의 명칭이 다른 것도 있다. 각 연산자의 우선 순위가 아니라 왼쪽에서 오른쪽으로 순서대로 처리된다.
주요 조건으로 다음과 같다.
* 이 행을 일치시킬 필요가 있다.
* 각 SELECT 절에 해당하는 행의 데이터 타입을 일치시킬 필요가 있다 (일부 데이터 형식에서 호환성 있는).
* 데이터 크기는 일치하지 않아도 된다.
* 조건을 만족하면 열 이름은 달라도 상관없다.
* UNION ALL 이외는 정렬되어 반환된다. 기본값은 전문의 제1열이 기준이 된다.
 
===FROM 절===
 
===WHERE 절===
 
===GROUP BY 절===
 
===HAVING 절===
 
===ORDER BY 절===
 
==관련 항목==