REGR_VALY

REGR_VALY

두 번째 인자가 NULL이면 NULL을 반환하고, 그렇지 않으면 첫 번째 인자를 반환해요.

REGR_VALY는 NULL 보존 함수이며, 더 흔히 쓰이는 NVL은 NULL 대체 함수라는 점에 유의해요.

출처: Snowflake REGR_VALY 함수 문서

본문

구문 (Syntax)

REGR_VALY(  ,  )

인자 (Arguments)

  • y: FLOAT 또는 DECFLOAT 타입으로 평가되거나 FLOAT 또는 DECFLOAT 타입으로 캐스팅할 수 있는 표현식이에요.
  • x: FLOAT 또는 DECFLOAT 타입으로 평가되거나 FLOAT 또는 DECFLOAT 타입으로 캐스팅할 수 있는 표현식이에요.

중요: 인자의 순서에 유의하세요 — y가 x보다 앞섭니다.

반환 값 (Returns)

입력 표현식 중 하나라도 DECFLOAT 타입이면 반환 타입은 DECFLOAT예요. 그렇지 않으면 반환 타입은 FLOAT예요.

예제 (Examples)

기본 예제:

SELECT REGR_VALY(NULL, 10), REGR_VALY(1, NULL), REGR_VALY(1, 10);
+---------------------+--------------------+------------------+
| REGR_VALY(NULL, 10) | REGR_VALY(1, NULL) | REGR_VALY(1, 10) |
|---------------------+--------------------+------------------|
|                NULL |               NULL |                1 |
+---------------------+--------------------+------------------+

이 예제는 앞선 예제와 비슷하지만, Y 값을 먼저 전달하는 관례를 더 명확히 보여줘요. 또한 REGR_VALX와 REGR_VALY의 차이도 보여줘요:

CREATE TABLE xy (col_x DOUBLE, col_y DOUBLE);
INSERT INTO xy (col_x, col_y) VALUES
    (1.0, 2.0),
    (3.0, NULL),
    (NULL, 6.0);
SELECT col_y, col_x, REGR_VALX(col_y, col_x), REGR_VALY(col_y, col_x)
    FROM xy;
+-------+-------+-------------------------+-------------------------+
| COL_Y | COL_X | REGR_VALX(COL_Y, COL_X) | REGR_VALY(COL_Y, COL_X) |
|-------+-------+-------------------------+-------------------------|
|     2 |     1 |                       1 |                       2 |
|  NULL |     3 |                    NULL |                    NULL |
|     6 |  NULL |                    NULL |                    NULL |
+-------+-------+-------------------------+-------------------------+

더 알아보기