상수(데이터베이스 엔진)
상수란 특정 데이터 값을 나타내는 기호입니다. 상수의 형식은 나타내는 값의 데이터 형식에 따라 다릅니다. 상수는 리터럴이라고도 합니다. 다음 표에서는 상수 사용에 대한 예를 보여 줍니다.
상수 형식 |
예 |
---|---|
문자열 |
'O''Brien' 'The level for job_id: %d should be between %d and %d.' |
유니코드 문자열 |
N'Michl' |
이진 문자열 상수 |
0x12Ef 0x69048AEFDD010E |
bit 상수 |
0 또는 1 |
datetime 상수 |
'April 15, 1998' '04/15/98' '14:30:24' '04:24 PM' |
integer 상수 |
1894 2 |
decimal 상수 |
1894.1204 2.0 |
float 및 real 상수 |
101.5E5 0.5E-2 |
money 상수 |
$12 $542023.14 |
uniqueidentifier 상수 |
0xff19966f868b11d0b42d00c04fc964ff '6F9619FF-8B86-D011-B42D-00C04FC964FF' |
숫자 상수의 경우에는 다음과 같이 숫자 값의 기호를 지정할 때 단항 + 및 - 연산자를 사용합니다.
+$156.45
-73.52E8
-129.42
+442
다음과 같이 COLLATE 절을 사용하여 특정 데이터 정렬을 할당하지 않는 한, 문자열 및 유니코드 상수에는 현재 데이터베이스의 기본 데이터 정렬이 할당됩니다.
'abc' COLLATE French_CI_AI
N'lustig' COLLATE German_Phonebook_CS_AS
Transact-SQL에서 상수 사용
Transact-SQL에서는 여러 가지 방법으로 상수를 사용할 수 있습니다. 예는 다음과 같습니다.
산술 식의 상수 값
SELECT Price + $.10 FROM MyTable
WHERE 절에서 비교되는 열의 데이터 값
SELECT * FROM MyTable WHERE LastName = 'O''Brien'
변수에 지정할 데이터 값
SET @DecimalVar = -1200.02
현재 행의 열에 지정될 데이터 값입니다. 이 값은 UPDATE 문의 SET 절이나 INSERT 문의 VALUES 절을 사용하여 지정합니다.
UPDATE MyTable SET Price = $99.99 WHERE PartNmbr = 1234 INSERT INTO MyTable VALUES (1235, $88.88)
PRINT 또는 RAISERROR 문에 의해 실행된 메시지의 텍스트를 지정하는 문자열
PRINT 'This is a message.'
IF 문이나 CASE 함수와 같은 조건문 테스트를 위한 값
IF (@@SALESTOTAL > $100000.00) EXECUTE Give_Bonus_Procedure