说我有我的SQL此查询...SQL零不会出现在查询
DECLARE @earninglist varchar(1000)
Set @earninglist=STUFF((SELECT DISTINCT '],['
+LTRIM([Description]) FROM
PR_Earnings
ORDER BY '],[' + LTRIM([Description])
FOR XML PATH('')
), 1, 2, '')+']'
DECLARE @chargeslist varchar(1000)
Set @chargeslist=STUFF((SELECT DISTINCT '],['
+LTRIM([ChargesTypeName]) FROM
PRChargesAdvancesTypes
ORDER BY '],[' + LTRIM([ChargesTypeName])
FOR XML PATH('')
), 1, 2, '')+']'
Declare @sql varchar(max)
Set @sql=
'Select Name,BranchId,Basic,'[email protected]+',Overtime,[Paid Hol],[Sunday OT],
[Gross Amount],[WithTax],[SSS Cont],[SSS Loan],[Pagibig Cont],[Pagibig Loan]
,Medicare,'[email protected]+',[Total Ded],[Net with OD],[Net no OD]
from
(
Select distinct
pr_employees.Fullname as Name
,PR_Employees.BranchID,PR_payroll.BasicPay as Basic
,PR_Empearnings.EarningAmt
,PR_Earnings.Description
,pr_payroll.Overtime
,Pr_payroll.SundayOT as [Sunday OT]
,Pr_Payroll.PaidHol as [Paid Hol]
,pr_payroll.ThirteenthMonthPay as [Thirteen MO]
,pr_payroll.Grosspay as [Gross Amount]
,pr_payroll.WithHoldingTax as [WithTax]
,pr_payroll.SSSPremium as [SSS Cont]
,pr_payroll.SSSLoan as [SSS Loan]
,pr_payroll.PagibigPremium as [Pagibig Cont]
,pr_payroll.PagibigLoan as [Pagibig Loan]
,pr_payroll.NHIPPremium as Medicare
,pr_payroll.TotalDeductions as [Total Ded]
,pr_Payroll.netpay as [Net with OD]
,pr_payroll.netnoOd as [Net no OD]
,prchargesAdvances.Credit
,prchargesadvancesTypes.ChargesTypeName
from pr_employees
left join pr_payroll on PR_Employees.EmpID=PR_Payroll.EmpID
left join PR_EmpEarnings on PR_Payroll.EmpID=PR_EmpEarnings.EmpID
left join PR_Earnings on PR_EmpEarnings.EarningId=pr_earnings.earningid
left join PR_Overtime on PR_Overtime.EmpID=PR_Payroll.EmpID
left join PRChargesAdvances on PRChargesAdvances.transactiondate=pr_payroll.period
and prchargesadvances.empid=pr_payroll.empid
left join PRChargesAdvancesTypes on PRChargesAdvances.ChargeTypeID=PRChargesAdvancesTypes.ChargesTypeID
where PR_Payroll.Period=''8/31/2013''
) as Source
pivot
(
MAX([EarningAmt])
FOR [Description] IN ('[email protected] +')
) as pvt
pivot
(
MAX([Credit])
FOR [ChargesTypeName] IN ('[email protected] +')
) as pvt2
;'
EXEC (@sql)
的这个输出是:
Name BranchID Basics Allowance Cola incentives name1 1 5000 200 250 name2 2 3000 250 100
有没有办法,我可以把零而不是空白的津贴和可乐?
请帮忙急需它谢谢..
哪个数据库? –
我只是做一个示例查询和一个示例输出.... – user3312649
我只是说,查询是绝对不可读的..它并没有帮助让人们回答你的问题 – NickyvV