SQL用特定文本替换字段

时间:2012-04-18 07:41:06

标签: sql

我的sql视图有以下字段:

name | description | date

我必须查询maxmin日期并将新视图打印为

status | name | description | starting

status字段中的文字字段将显示longest timeshortest time。这个字段是全新的,并没有内置到任何表格中,我如何在视图中创建这个字段?

编辑:

我想在我的视图中添加额外的字段status,因此请添加一个额外的列。因此,我有

create or replace view one (name, description, starting) as
-- SQL STUFF HERE...

从这个视图中,我需要从中获取最大值和最小值并将这两个选择结合在一起,但添加一个额外的列来描述该行是否包含longest timeshortest time。获得

create or replace view two (status, name, description, starting) as

我写的那一刻

select name, longname, max(starting) from one
union
select name, longname, min(starting) from one;

并打印出三列,但我需要添加额外的第四列status,但我不知道如何做到这一点。

2 个答案:

答案 0 :(得分:1)

只需使用简单的字符串:

select 'longest time' AS status, name, longname, max(starting) from one
union
select 'shortest time' AS status, name, longname, min(starting) from one; 

答案 1 :(得分:0)

不确定你想要什么开始显示,因为你没有描述它,但分组依据是你正在寻找的,你可以在你的日期运行聚合功能,以获得你想要的信息。您可能需要不同的日期格式,因此您可能希望使用转换而不是强制转换以您希望的格式获取日期。

SELECT
    CAST(MAX(Date) AS NVARCHAR(20)) + ' ,' 
    + CAST(MIN(Date) AS NVARCHAR(20)) AS Status
    Name
    Description

FROM tblMyTables
GROUP BY 
    Name, 
    Description