본문 바로가기

IT/기타

SQL 큐브리드 sign 함수 개념, DECODE(SIGN()) 함수 사용방법

300x250

 

 

 

큐브리드(CUBRID)는 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다.

 

CUBRID는 다양한 수학 함수들을 제공하며, 그 중 하나가 SIGN 함수입니다.

 

SIGN 함수는 주어진 숫자의 부호를 반환합니다.

 

SIGN 함수의 사용법

SIGN 함수는 인수로 숫자를 받아서 해당 숫자의 부호를 반환합니다. 반환 값은 다음과 같습니다:

  • 숫자가 양수일 경우: 1
  • 숫자가 음수일 경우: -1
  • 숫자가 0일 경우: 0

구문

 
SIGN(numeric_expression)
 
  • numeric_expression: 부호를 확인하고자 하는 숫자식입니다.

 

예제

 

다음은 SIGN 함수를 사용하여 숫자의 부호를 반환하는 예제입니다:

SELECT SIGN(10); -- 결과: 1
SELECT SIGN(-5); -- 결과: -1
SELECT SIGN(0);-- 결과: 0
 
 
 

테이블의 컬럼 값을 사용하여 SIGN 함수를 적용할 수도 있습니다.

 

예를 들어, 다음과 같은 테이블이 있다고 가정해 봅시다:

 

CREATE TABLE numbers ( id INT, value INT );

INSERT INTO numbers (id, value) VALUES (1, 10);
INSERT INTO numbers (id, value) VALUES (2, -20);
INSERT INTO numbers (id, value) VALUES (3, 0);
 
 
 
 

이 테이블에서 value 컬럼의 부호를 반환하려면 다음과 같은 쿼리를 사용할 수 있습니다:

 

SELECT id, value, SIGN(value) AS sign_value FROM numbers;
 
 
 
 

결과는 다음과 같습니다:

 

id value sign_value
1 10 1
2 -20 -1
3 0 0

 

 

이처럼 SIGN 함수는 숫자의 부호를 판별할 때 유용하게 사용할 수 있습니다.

 

 

DECODE(SIGN(score), 1, 1, 0)

이 구문은 score의 부호를 평가하여 다음과 같이 작동합니다:

  1. SIGN(score)가 1이면, DECODE 함수는 1을 반환합니다.
  2. SIGN(score)가 1이 아니면, DECODE 함수는 0을 반환합니다.

이 표현식의 의미는 score가 양수일 경우 1을 반환하고, 그 외에는 0을 반환하는 것입니다. 음수나 0인 경우는 모두 0을 반환합니다.

 

예제

다음은 score 값에 따라 DECODE 함수를 사용하여 값을 반환하는 예제입니다:

 
SELECT score, DECODE(SIGN(score), 1, 1, 0) AS result
FROM (
    SELECT 10 AS score FROM dual
    UNION ALL
    SELECT -5 AS score FROM dual
    UNION ALL
    SELECT 0 AS score FROM dual
) scores;

 

 

 

결과는 다음과 같습니다:

 

 

score result
10 1
-5 0
0 0

 

 

이 쿼리는 score가 양수일 경우 1을, 그렇지 않을 경우 0을 반환합니다.

 

 

 

 

 

300x250

'IT > 기타' 카테고리의 다른 글

데이터그로스팀 역할?  (1) 2024.11.24
BI (Business Intelligence) 뜻은?  (1) 2024.11.19
공카드번호란?  (0) 2024.11.17
nbase-arc 란  (0) 2024.11.03
sftp 자바 라이브러리 JSch와 Apache Commons VFS  (1) 2024.10.22