【问题标题】:Results appear in columns and not rows结果显示在列中而不是行中
【发布时间】:2020-03-21 01:06:11
【问题描述】:

在 SQL Server 中,我正在尝试创建一个查询,但我需要列中的日期并出现在行中。

出现的日期是:

IDNUMBER  状态      SETON      工作流程ID

25               已付款         01/02/2019    1

25              收到    20/02/2019    1

25               已付款           05/05/2019   2

25收到10/05/2019 2

40               已付款           2019 年 3 月 3 日   4

40               收到      15/03/2019   4


我希望行值出现在列中:

IDNUMBER  已付款            已收到     WORKFLOWID

25                 01/02/2019    20/02/2019            1

25                 05/05/2019    10/05/2019             2

40                 03/03/2019    15/03/2019            4

我需要创建谁查询才能获得此日期???

感谢

【问题讨论】:

    标签: sql date transform rows columnsorting


    【解决方案1】:

    使用条件聚合:

    select idnumber, workflowid,
           max(case when status = 'payed' then seton end) as payed,
           max(case when status = 'received' then seton end) as received
    from t
    group by idnumber, workflowid;
    

    【讨论】:

      【解决方案2】:

      更正“已收到 SETON”(以粗体标记)

          From   
          (Select IDNUMBER, SETON  as Received,  WORKFLOWID from tb1 where STATUS = 'Received')a
          left join
          (Select IDNUMBER, SETON  as Payed,  WORKFLOWID from tb1 where STATUS = 'Payed')b
          on a.IDNUMBER = b.IDNUMBER````
      
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-12-30
        • 1970-01-01
        • 1970-01-01
        • 2017-12-29
        • 2020-05-11
        • 2020-01-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多