【问题标题】:How to join two tables with date and week number?如何连接两个带有日期和周数的表?
【发布时间】:2018-04-16 14:16:03
【问题描述】:

如何连接这两个表以根据部门名称和周数连接数据。这样如果周数不匹配,它会为其他人显示空值。

http://sqlfiddle.com/#!6/3bbd3/1

【问题讨论】:

    标签: sql sql-server select join cross-join


    【解决方案1】:

    一个完整的外部连接应该可以解决问题:

    SELECT          d.id, 
                    d.name, 
                    f.id, 
                    DATEPART(WEEK, setupdate) as WeekNumber  
    FROM            departments d
    FULL OUTER JOIN forecast f ON d.name = f.name AND
                    DATEPART(WEEK, setupdate) = DATEPART(WEEK, forecast)
    

    【讨论】:

    • 我没有完全理解这个问题。但是您也不需要按 ID 或名称加入吗?
    • @JuanCarlosOropeza 你说得对,很好。在阅读问题时,我以某种方式跳过了该要求。我已经相应地编辑了我的答案。
    猜你喜欢
    • 2023-03-21
    • 1970-01-01
    • 2022-08-17
    • 1970-01-01
    • 2018-09-23
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多