【发布时间】:2012-05-11 19:07:24
【问题描述】:
我正在尝试添加到我的 DB2 存储过程的功能:
Select a MIN() date from a joined table column.
IF there was more than one row in this joined table, append a " * " to the date.
谢谢,非常感谢任何帮助或指导。
【问题讨论】:
-
只需编写查询以获取日期的最小值,将日期转换为字符串,并使用以下 case 语句连接该字符串:(case when count(*) > 1 then '*'否则''结束)。我不记得在 DB2 中将日期转换为字符串的命令,所以我不能轻易提供 SQL。
-
我尝试在连接中添加一个 if 检查。如果行数大于 1,则添加字符。不会编译
-
@GordonLinoff 我认为您正在寻找 VARCHAR_FORMAT(
, ) -
特德,SQL 不理解“如果”。您需要使用 case 语句。
-
你确定这必须在数据库层完成吗?这听起来像一个显示问题。我实际上会将 count 作为单独的列返回,然后让我的最终显示代码进行字符连接。当然,您不能在
JOIN中执行此操作 - 您必须包装初始的SELECT
标签: sql stored-procedures db2