【发布时间】:2014-05-09 12:38:16
【问题描述】:
任何人都可以告诉我聚合函数最大值对于相同值的结果是什么? 假设我有一个 creation_date 列,其中包含日期为 varchar2 。如果我尝试 max(creation_date) 将得到什么结果以及它将如何选择行。如果在 where 子句子查询中使用它,行是可预测的吗?
完整的查询是这样的。
create id from my_table where create_date=(select max(create_date) from my table);
【问题讨论】:
-
你想达到什么目的?如果你想得到最新的日期,那么
MAX(create_date)不会给你你想要的。您需要先将varchar2转换为date。 -
好的..你给我提示。我只想知道如果每个值都相同,oracle聚合函数如何选择任何行
-
它将返回其中一个值(它将始终返回一个值),但是无法预测它将返回其中哪一个。示例:
SELECT MAX(col) FROM tbl其中tbl.col的值为 (1, 2, 1, 4),它将返回 1。现在是第一行还是第三行的 1?没办法说。
标签: oracle11g oracle-sqldeveloper database-administration