且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

我想合并两列,其中在SQL Server中将公共列重复两次

更新时间:2023-02-05 19:48:11

由于我不知道您的数据库有多大,因此不确定其性能,但是一种实现方法是将查询与另一种包装在一起像这样的SELECT语句.
Not sure on the performance of this since I dont know how large your database is, but one way you can do it is you can wrap your query with another SELECT statement, like this.
SELECT AIRLINECODE, SUM(CURRENT_MONTH_INVOICE), SUM(CURRENT_MONTH_INVOICE) FROM(
SELECT AIN_AIRLINE_CODE AS'AIRLINECODE',(SUM(AIN_NET_FARE)-(SUM(AIN_DISCOUNT_AMT)+SUM(AIN_P_TDS_AMT)))
AS 'CURRENT_MONTH_INVOICE',0 AS 'CURRENT_MONTH_CN' FROM T_T_AIR_INVOICE A
 WHERE AIN_INVOICE_DT BETWEEN
(SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(GETDATE())-1),GETDATE()),101)) AND GETDATE()
 GROUP BY AIN_AIRLINE_CODE UNION
 (SELECT ACN_AIRLINE_CODE AS'AIRLINECODE',0 AS 'CURRENT_MONTH_INVOICE',
(SUM(ACN_NET_REFUND)-(SUM(ACN_DISCOUNT_AMT)+SUM(ACN_P_TDS_AMT)))
 AS 'CURRENT_MONTH_CN' FROM T_T_AIR_CRNOTE B WHERE ACN_CRN_DT BETWEEN
 (SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(GETDATE())-1),GETDATE()),101)) AND GETDATE()
 GROUP BY ACN_AIRLINE_CODE)) GROUP BY AIRLINECODE