类别:

条件表达式函数

REGR_VALX

如果第一个实参为 NULL,则返回 NULL;否则,返回第二个实参。

请注意,REGR_VALX 是一个 NULL-preserving 函数,而更常用的 NVL 是一个 NULL-replacement 函数。

语法

REGR_VALX( <y> , <x> )
Copy

实参

y

计算结果为类型 DOUBLE 或可以转换为 DOUBLE 的表达式。

x

计算结果为类型 DOUBLE 或可以转换为 DOUBLE 的表达式。

重要

注意实参的顺序;y 在 x 之前。

返回

返回类型 DOUBLE 的值。

示例

基本示例:

SELECT REGR_VALX(NULL, 10), REGR_VALX(1, NULL), REGR_VALX(1, 10);
+---------------------+--------------------+------------------+
| REGR_VALX(NULL, 10) | REGR_VALX(1, NULL) | REGR_VALX(1, 10) |
|---------------------+--------------------+------------------|
|                NULL |               NULL |               10 |
+---------------------+--------------------+------------------+
Copy

此示例与前面的示例类似,但更清楚地表明惯例是先传递 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);
Copy
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 |
+-------+-------+-------------------------+-------------------------+
Copy
语言: 中文