Oracle 从两个日期插入最大值

Spi*_*rit 4 oracle plsql

我想在插入两个不同值中较大值的 PL/SQL 脚本中创建一个插入语句。从概念上讲,我想做的是

Insert into MYTABLE (DATE_INSERT)
VALUE (MAX(DATE_DEFAULT, DATE_INSERT_VALUE))
Run Code Online (Sandbox Code Playgroud)

其中DATE_DEFAULTDATE_INSERT_VALUE是 类型的局部变量DATEMAX然而,该函数是一个聚合函数,所以我不能向它传递两个参数。

Jus*_*ave 11

听起来你想要这个GREATEST功能

INSERT INTO my_table( date_column )
 VALUES( GREATEST( date_default, date_insert_value ));
Run Code Online (Sandbox Code Playgroud)

  • 当有空值时,可能更喜欢“CASE”。`GREATEST(1, NULL)` 结果为 `NULL` 而不是 `1`。 (2认同)