Let me know if it is not working.
create table attn(id varchar(10), Dt datetime, InOut varchar(10));
insert into attn values('12334','12-02-2013',09.10)
insert into attn values('12334','12-02-2013',10.10)
insert into attn values('12334','12-02-2013',11.10)
insert into attn values('32334','12-02-2013',09.11)
insert into attn values('32334','12-02-2013',11.20)
insert into attn values('32334','12-02-2013',14.30)
insert into attn values('32334','12-02-2013',17.10)
insert into attn values('32430','12-02-2013',10.11)
GO
Select Id, Dt, isnull(case when Status='I' then InOut end,'') 'Intime' ,isnull(case when Status='O' then InOut end,'') 'OutTime' from
(
select * from (select row_number() over(order by id) as sl, id, Dt, Inout, 'I' as Status from attn) as t
where (sl % 2 = 1)
union all
select * from (select row_number() over(order by id) as sl, id, Dt, Inout, 'O' as Status FROM attn) as t2 where (sl % 2 = 0)
)
AS T
Here I assume that Ist row is for in and 2nd for out. Query is going to complecated. You can think redesign your table though query will as simple as possible.