EXAMPLE:EMPID EMPNAME G F S T DT
1 DURGA 0 0 0 0 2016-02-01
2 DURGA 0 0 0 0 2016-02-02
I NEED BELOW EXMAPLE PLAESE HELP ME HOW TO CONVERT THIS
2016-02-01 2016-02-02
EMPID EMPNAME G F S T G1 F2 S2 T2
What I have tried:
USE [INVATTENDENCE]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER FUNCTION [dbo].[FN_GETATT]
(
@siteid int,
@dept_name varchar(50),
@todate datetime
)
RETURNS TABLE
as
return(
select * from(
select * from(
SELECT et.emp_id,emp.emp_name,ROW_NUMBER() OVER(PARTITION BY emp.emp_code ORDER BY emp.EFFECTIVE_FROM DESC) AS Row,
isnull(et.GENERAL_SHIFT,0) as g,
isnull(et.FIRST_SHIFT,0) as f,
isnull(et.SECOND_SHIFT,0) as s,
isnull(et.THIRD_SHIFT,0) as t,
isnull(convert(DATETIME,'20'+convert(varchar(10),et.year,120)+'-'+
convert(varchar(10),et.month,120)+'-'+
convert(varchar(10),et.day,120)),0) as dt
from EMP_FPONM_EMP_TIME_SHEET et JOIN
EMP_FPONM_EMPLOYEE_INFORMATION emp on et.EMP_ID = emp.EMP_CODE
where
emp.dept_name = @dept_name
and emp.STATUS='Present'
and emp.SITE_ID=@siteid
and Convert(nvarchar(50),DATEPART(YYYY,@todate))+'-'+ Convert(nvarchar(50),DATEPART(MM,@todate))>=Convert(nvarchar(50),DATEPART(YYYY,(emp.EFFECTIVE_FROM)))+'-'+ Convert(nvarchar(50),DATEPART(MM,(emp.EFFECTIVE_FROM)))
) as a where dt between DATEADD(day, -6, @todate) and DATEADD(day, -1, @todate)) as b where b.Row=1
)