SQL 데이터베이스 함수란?What are the SQL database functions?

적용 대상: 예SQL Server 예Azure SQL Database 예Azure SQL Data Warehouse 예병렬 데이터 웨어하우스 APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

SQL 데이터베이스에서 사용할 수 있는 기본 제공 함수의 범주에 대해 알아보세요.Learn about the categories of built-in functions you can use with SQL databases. 기본 제공 함수를 사용하거나 각자의 사용자 정의 함수를 만들 수 있습니다.You can use the built-in functions or create your own user-defined functions.

집계 함수Aggregate functions

집계 함수는 값 집합에 대한 계산을 수행하고 단일 값을 반환합니다.Aggregate functions perform a calculation on a set of values and return a single value. 이 함수는 select 목록 또는 SELECT 문의 HAVING 절에 허용됩니다.They are allowed in the select list or the HAVING clause of a SELECT statement. GROUP BY 절과 함께 집계를 사용하여 행 범주에 대한 집계를 계산할 수 있습니다.You can use an aggregation in combination with the GROUP BY clause to calculate the aggregation on categories of rows. 특정 값 범위에 대한 집계를 계산하려면 OVER 절을 사용합니다.Use the OVER clause to calculate the aggregation on a specific range of value. OVER 절은 GROUPING 또는 GROUPING_ID 집계 다음에 올 수 없습니다.The OVER clause cannot follow the GROUPING or GROUPING_ID aggregations.

모든 집계 함수는 결정적입니다. 즉, 동일한 입력 값에서 실행할 경우 항상 동일한 값을 반환합니다.All aggregate functions are deterministic, which means they always return the same value when they run on the same input values. 자세한 내용은 Deterministic and Nondeterministic Functions을 참조하세요.|For more information, see Deterministic and Nondeterministic Functions.|

분석 함수Analytic functions

분석 함수는 행 그룹을 기반으로 집계 값을 컴퓨팅합니다.Analytic functions compute an aggregate value based on a group of rows. 그러나 집계 함수와 달리 분석 함수는 각 그룹에 대해 여러 행을 반환할 수 있습니다.However, unlike aggregate functions, analytic functions can return multiple rows for each group. 분석 함수를 사용하면 이동 평균, 누계, 백분율 또는 그룹 내 상위 N개 결과를 컴퓨팅할 수 있습니다.You can use analytic functions to compute moving averages, running totals, percentages, or top-N results within a group.

순위 함수Ranking functions

순위 함수는 파티션에서 각 행의 순위 값을 반환합니다.Ranking functions return a ranking value for each row in a partition. 사용하는 함수에 따라 어떤 행은 다른 행과 동일한 값을 받을 수 있습니다.Depending on the function that is used, some rows might receive the same value as other rows. 순위 함수는 확정적이지 않습니다.Ranking functions are nondeterministic.

행 집합 함수Rowset functions

행 집합 함수는 SQL 문에서 테이블 참조처럼 사용할 수 있는 개체를 반환합니다.Rowset functions Return an object that can be used like table references in an SQL statement.

스칼라 함수Scalar functions

단일 값에 대해 작동하며 단일 값을 반환합니다.Operate on a single value and then return a single value. 스칼라 함수는 식이 유효한 경우 언제든지 사용할 수 있습니다.Scalar functions can be used wherever an expression is valid.

스칼라 함수의 범주Categories of scalar functions

함수 범주Function category 설명Description
구성 함수Configuration Functions 현재 구성에 대한 정보를 반환합니다.Return information about the current configuration.
변환 함수Conversion Functions 데이터 형식 캐스팅 및 변환을 지원합니다.Support data type casting and converting.
커서 함수Cursor Functions 커서에 대한 정보를 반환합니다.Return information about cursors.
날짜 및 시간 데이터 형식 및 함수Date and Time Data Types and Functions 날짜 및 시간 입력 값에 대한 작업을 수행하며 문자열, 숫자 또는 날짜와 시간 값을 반환합니다.Perform operations on a date and time input values and return string, numeric, or date and time values.
JSON 함수JSON Functions JSON 데이터를 검증, 쿼리 또는 변경합니다.Validate, query, or change JSON data.
논리 함수Logical Functions 논리 연산을 수행합니다.Perform logical operations.
수치 연산 함수Mathematical Functions 함수에 매개 변수로 제공되는 입력 값을 기반으로 하여 계산 작업을 수행하고 숫자 값을 반환합니다.Perform calculations based on input values provided as parameters to the functions, and return numeric values.
메타데이터 함수Metadata Functions 데이터베이스와 데이터베이스 개체에 대한 정보를 반환합니다.Return information about the database and database objects.
보안 함수Security Functions 사용자와 역할에 대한 정보를 반환합니다.Return information about users and roles.
문자열 함수String Functions 문자열(char 또는 varchar) 입력 값에 대한 작업을 수행하고 문자열이나 숫자 값을 반환합니다.Perform operations on a string (char or varchar) input value and return a string or numeric value.
시스템 함수System Functions 작업을 수행하고 SQL ServerSQL Server 인스턴스의 값, 개체 및 설정에 대한 정보를 반환합니다.Perform operations and return information about values, objects, and settings in an instance of SQL ServerSQL Server.
시스템 통계 함수System Statistical Functions 시스템에 대한 통계 정보를 반환합니다.Return statistical information about the system.
텍스트 및 이미지 함수Text and Image Functions 텍스트 또는 이미지 입력 값이나 열에 대한 작업을 수행하고 그 값에 대한 정보를 반환합니다.Perform operations on text or image input values or columns, and return information about the value.

함수 결정성Function Determinism

SQL ServerSQL Server 기본 제공 함수는 결정적이거나 비결정적입니다.built-in functions are either deterministic or nondeterministic. 특정 입력 값 집합으로 함수를 호출했을 때 항상 동일한 결과를 반환하는 경우에는 함수가 결정적이며Functions are deterministic when they always return the same result any time they are called by using a specific set of input values. 동일한 특정 입력 값 집합으로 함수를 호출할 때마다 다른 결과를 반환할 수 있으면 비결정적입니다.Functions are nondeterministic when they could return different results every time they are called, even with the same specific set of input values. 자세한 내용은 Deterministic and Nondeterministic Functions를 참조하세요.For more information, see Deterministic and Nondeterministic Functions

함수 데이터 정렬Function Collation

입력으로 문자열을 받고 출력으로 문자열을 반환하는 함수는 출력에 입력 문자열의 데이터 정렬을 사용합니다.Functions that take a character string input and return a character string output use the collation of the input string for the output.

문자가 아닌 항목을 입력으로 받고 문자열을 출력으로 반환하는 함수는 출력에 현재 데이터베이스의 기본 데이터 정렬을 사용합니다.Functions that take non-character inputs and return a character string use the default collation of the current database for the output.

입력으로 여러 문자열을 받고 출력으로 문자열을 반환하는 함수는 데이터 정렬 선행 규칙을 사용하여 출력 문자열의 데이터 정렬을 설정합니다.Functions that take multiple character string inputs and return a character string use the rules of collation precedence to set the collation of the output string. 자세한 내용은 데이터 정렬 선행 규칙(Transact-SQL)을 참조하세요.For more information, see Collation Precedence (Transact-SQL).

참고 항목See Also

CREATE FUNCTION(Transact-SQL) CREATE FUNCTION (Transact-SQL)
결정적 함수 및 비결정적 함수 Deterministic and Nondeterministic Functions
저장 프로시저 사용 (MDX)Using Stored Procedures (MDX)