이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
Visual Studio 2017을 사용하는 것이 좋습니다.

식에 사용하는 함수

함수는 사용자가 활용할 수 있도록 저장된 연산입니다. 데이터베이스 관리 시스템에서 제공하는 기본 함수를 사용하거나 자신만의 고유한 사용자 정의 함수를 만들 수 있습니다.

식을 만들 때 다음과 같은 다양한 함수를 호출할 수 있습니다.

  • 문자열(문자) 함수

  • 날짜 함수

  • 수학 함수

  • 시스템 함수

  • 데이터를 다른 형식으로 변환하는 기타 함수

  • 사용자 정의 함수

일반적으로 사용자의 데이터베이스에서 사용할 수 있는 함수에 대해 잘 알고 있으면 해당 데이터베이스에서 지원하는 함수 이름과 구문을 사용할 수 있습니다. 뷰, 저장 프로시저 또는 트리거를 만드는 경우와 같이 데이터베이스 고유의 함수 이름과 구문을 사용해야 하는 경우도 있습니다.

쿼리 및 뷰 디자이너는 다음을 수행하여 함수 사용 작업을 도와 줍니다.

  • 함수 인수에 정확히 인용 부호 삽입

  • 인수의 데이터 형식 확인

  • 반환 값의 데이터 형식 확인

데이터베이스에서 지원하는 함수에 대한 자세한 내용은 데이터베이스 설명서를 참조하십시오.

참고 참고

특수 함수 집합인 집계 함수(예: SUM( ), AVG( ))를 사용하여 데이터를 요약하는 쿼리를 만들 수 있습니다. 자세한 내용은 쿼리 결과 요약을 참조하십시오.

다음은 문자열을 조작하기 위한 함수이며 여러 가지 데이터베이스에 사용할 수 있는 예제가 함께 나와 있습니다.

Function

설명

예제

LCASE( )*,  LOWER( )

문자열을 소문자로 변환합니다.

첫째 문자를 대문자로 만들려면 다음을 사용합니다.

  • SELECT UPPER(substring(lname, 1, 1))

나머지 문자를 소문자로 변환하려면 다음을 사용합니다.

  • LOWER(substring (lname, 2, 99))

FROM employee

성의 첫 문자를 대문자로 변환하고 나머지 문자를 소문자로 변환한 다음 표시합니다.

LTRIM( )

문자열에서 선행 공백을 제거합니다.

SELECT stor_name, LTRIM(stor_address)
FROM stores

맨 앞에서 불필요한 공백을 제거한 다음 주소 열을 표시합니다.

SUBSTRING( )

문자열에서 하나 이상의 문자를 추출합니다.

SELECT SUBSTRING(phone,1,3)
FROM employee

전화 번호의 처음 세 문자(지역 번호)를 표시합니다.

UCASE( )*,  UPPER( )

문자열을 대문자로 변환합니다.

SELECT * FROM employee
WHERE UPPER(lname) = 'SMITH'

lname 열의 내용을 특정 값과 비교하기 전에 대문자로 변환합니다. 이렇게 하면 대/소문자를 구분하는 검색에서 일치하지 않는 항목으로 나타나는 것을 방지할 수 있습니다.

*   ODBC 함수로 호출하는 경우 { fn LCASE(text) } 구문을 사용합니다.

다음 함수 및 이와 유사한 기타 함수를 여러 데이터베이스에 사용할 수 있습니다.

Function

설명

예제

DATEDIFF( )

두 날짜 사이의 간격을 계산합니다.

SELECT fname, lname, hire_date
FROM employee
WHERE DATEDIFF(year, hire_date, getdate()) > 5

근무 연수가 5년이 넘는 직원을 모두 찾습니다.

DATEPART( )

일, 월, 년을 포함하여 날짜 열 또는 datetime 열의 지정된 부분을 반환합니다.

SELECT DATEPART(year, hire_date)
FROM employee

직원의 입사 연도만(전체 날짜 아님) 표시합니다.

CURDATE( )*,  GETDATE( ) 또는 DATE( )

datetime 형식의 현재 날짜를 반환합니다. 이 함수는 오늘 날짜에서 앞으로 또는 뒤로 간격을 계산하는 것과 같이 다른 여러 날짜 함수의 입력으로 사용하면 유용합니다.

SELECT order_id
FROM orders
WHERE order_date = GETDATE()
Displays orders placed today.

대부분의 데이터베이스에서는 계산에 사용할 수 있는 몇 가지 수학 함수를 제공합니다. 다음은 여러 데이터베이스에서 일반적으로 사용할 수 있는 함수입니다.

참고 참고

집계 함수 AVG( ), COUNT( ), MAX( ), MIN( ), SUM( ) 등을 사용하여 보고서에 평균과 합계를 표시할 수 있습니다.

Function

설명

예제

ROUND( )

지정된 소수 자릿수로 반올림합니다.

SELECT ROUND(qty * (price * discount), 2)
FROM sales

할인율을 적용하여 총 가격을 표시한 다음 결과를 반올림하여 소수점 이하 두 자리로 나타냅니다.

FLOOR( )

소수부를 가장 근사한(가장 작은) 정수로 잘라버립니다.

UPDATE titles
SET price = FLOOR(price)

titles 테이블에서 모든 가격의 소수부를 가장 근사한 정수로 잘라버립니다.

CEILING( )

소수부를 가장 근사한 정수로 올립니다.

INSERT INTO archivetitle
SELECT title, CEILING(price)
FROM titles

titles 테이블의 titleprice(소수부를 가장 근사한 정수로 올림)를 archivetitle 테이블에 복사합니다.

대부분의 데이터베이스에서는 현재 데이터베이스, 현재 사용자 또는 서버 정보를 반환하는 데 사용할 수 있는 특수 함수를 사용할 수 있습니다. 다음은 여러 데이터베이스에서 일반적으로 사용할 수 있는 함수입니다.

Function

설명

예제

DATALENGTH( )

지정된 식에 사용되는 바이트 수를 반환합니다.

SELECT DATALENGTH(au_lname)
FROM authors

성과 이름에 필요한 바이트 수를 표시합니다.

USER( )*,  USER_NAME( )

현재 사용자 이름을 반환합니다.

SELECT company_name, city, phone
FROM customers
WHERE salesperson = USER_NAME()

쿼리를 실행하는 영업 직원의 고객 목록을 만듭니다.

일부 데이터베이스에서는 앞에서 언급한 함수 외에 데이터 형식 변환 또는 기타 유틸리티 함수와 같이 쿼리를 만드는 데 사용할 수 있는 다른 함수를 제공합니다. 다음 함수는 여러 데이터베이스에서 사용할 수 있는 유틸리티 함수의 형식을 설명합니다.

Function

설명

예제

CONVERT( )

데이터 형식을 다른 형식으로 변환합니다. 이 함수는 데이터의 형식을 지정하거나 데이터 열의 내용을 다른 데이터 형식을 필요로 하는 함수의 인수로 사용하는 데 유용합니다.

SELECT 'Hired: ' + CONVERT(char (11),
  hire_date)
FROM employee

앞에 캡션을 포함하여 날짜를 표시합니다. CONVERT( ) 함수는 날짜를 리터럴 문자열과 연결할 수 있도록 문자열로 만듭니다.

SOUNDEX( )

지정된 식의 Soundex 코드를 반환합니다. 이 코드를 사용하여 "비슷한 발음"을 검색할 수 있습니다.

SELECT au_lname, au_fname
FROM authors
WHERE SOUNDEX(au_fname) = 'M240'

"Michael"과 발음이 비슷한 이름을 검색합니다.

STR( )

수치 데이터를 텍스트 연산자를 사용하여 조작할 수 있도록 문자열로 변환합니다.

SELECT str(job_id)
FROM employee

job_id 열을 단일 문자열로 표시합니다.

표시: