在Informix SQL中选择null

在Informix SQL中选择null,sql,informix,Sql,Informix,我有以下疑问 select case when <some condition> then max(modify_date) else NULL::DATETIME end from <table> 选择case when then max(modify_date)else NULL::DATETIME end from 我想在else情况下返回null,但这会引发语法错误。如何解决这个问题?我也尝试了CAST(空为DATETIME)。您尝试过: select (ca

我有以下疑问

select case when <some condition> then max(modify_date) else NULL::DATETIME end from <table>
选择case when then max(modify_date)else NULL::DATETIME end from
我想在else情况下返回null,但这会引发语法错误。如何解决这个问题?我也尝试了
CAST(空为DATETIME)

您尝试过:

select (case when <some condition> then max(modify_date) end)
from <table>;
select(最大(修改日期)结束时的情况)
从…起
没有
else
子句会自动返回
NULL

您是否尝试过:

select (case when <some condition> then max(modify_date) end)
from <table>;
select(最大(修改日期)结束时的情况)
从…起

没有
else
子句会自动返回
NULL

您需要指定哪种日期时间类型。假设
modify_date
是一个DATETIME YEAR TO DAY,那么您需要编写:

SELECT CASE
       WHEN <some condition>
       THEN MAX(modify_date)
       ELSE NULL::DATETIME YEAR TO DAY -- or CAST(NULL AS DATETIME YEAR TO DAY)
       END
  FROM <table>

或者有另一种方法来处理它。这取决于您期望的输出。聚合输出整个表的一行;空值是“每行一行”(这就是为什么我认为会有麻烦)。您不需要指定GROUPBY子句。

您需要指定哪种日期时间类型。假设
modify_date
是一个DATETIME YEAR TO DAY,那么您需要编写:

SELECT CASE
       WHEN <some condition>
       THEN MAX(modify_date)
       ELSE NULL::DATETIME YEAR TO DAY -- or CAST(NULL AS DATETIME YEAR TO DAY)
       END
  FROM <table>
或者有另一种方法来处理它。这取决于您期望的输出。聚合输出整个表的一行;空值是“每行一行”(这就是为什么我认为会有麻烦)。您没有指定GROUPBY子句