首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在可用的记录日期中找出最大的日期,然后将输出映射到其他类似的输出,以在所有的输出中找到最大的输出。

在可用的记录日期中找出最大的日期,然后将输出映射到其他类似的输出,以在所有的输出中找到最大的输出。
EN

Stack Overflow用户
提问于 2014-10-15 14:25:00
回答 3查看 50关注 0票数 0

我有6个表,其中5个表中的帐户作为公共密钥,id是所有这些表的公共密钥。

其中5个有4-5个日期字段。现在,我的任务是使用where条件找到表中记录的最大日期:id = 10,现在也可以在所有其他表中查找相同记录的最大日期。在所有的表中,没有像帐户那样的约束必须是相同的数字,对于所有不同的表中相同的id,它可以是不同的。

现在,我必须找到相应的帐户,其中有最大值。所有对应于传递的id值的日期值。

救命啊!!

EN

回答 3

Stack Overflow用户

发布于 2014-10-15 15:44:34

代码语言:javascript
复制
SELECT
    max(convert varchar, acct.account_date, 101)
FORM
    account acct
WHERE 
    acct.id = (SELECT acct.id FROM id_tlb WHERE acct.id = 'something') 

您可能不需要在那里转换日期,但是它将帮助您获得时间戳的mm/dd/yyyy格式。

回复,如果你需要其他的东西。

票数 0
EN

Stack Overflow用户

发布于 2014-10-16 14:37:44

看看这个..。查询看起来很糟糕,因为我认为表的设计/需求冲突。

代码语言:javascript
复制
select max(dateB) AS max_date FROM
(
    select max(dateA) AS dateB FROM 
    (   
        select date1 AS dateA  from tb1 where id = 10
        union 
        select date2 AS dateA from tb1 where id = 10
        union 
        select date3 AS dateA from tb1 where id = 10
        union 
        select date4 AS dateA from tb1 where id = 10
    )
    UNION 
    select max(dateA) AS dateB FROM 
    (   
        select date1 AS dateA  from tb2 where id = 10
        union 
        select date2 AS dateA from tb2 where id = 10
        union 
        select date3 AS dateA from tb2 where id = 10
        union 
        select date4 AS dateA from tb2 where id = 10
    )
    UNION 
    select max(dateA) AS dateB FROM 
    (   
        select date1 AS dateA  from tb3 where id = 10
        union 
        select date2 AS dateA from tb3 where id = 10
        union 
        select date3 AS dateA from tb3 where id = 10
        union 
        select date4 AS dateA from tb3 where id = 10
    )
    UNION 
    select max(dateA) AS dateB FROM 
    (   
        select date1 AS dateA  from tb4 where id = 10
        union 
        select date2 AS dateA from tb4 where id = 10
        union 
        select date3 AS dateA from tb4 where id = 10
        union 
        select date4 AS dateA from tb4 where id = 10
    )
)
票数 0
EN

Stack Overflow用户

发布于 2014-10-17 15:51:19

是的终于拿到了。

选择date1,帐户来自table1,其中id = 'X‘联合所有选择了date2,从table1中所有id = 'X’联合选择了date3,从table1选择了date4,从id = 'X‘联合中选择了date4,从table2选择了date5,从id = 'X’联合中选择了date6,从table2选择了id = 'X‘联合,从table2选择了id = 'X’联合,从table2选择了id = 'X‘联合,从table3选择了id=’X‘联合。

选择date8,table3中的帐户,其中id = 'X‘

由date1制定的订单限制1;

希望这会对其他人有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26385000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档