hi,i want to get following output:id_order | type | number-------------------------1234 | A | 1 1235 | A | 01235 | B | 01236 | B | 11237 | C | 01237 | D | 0 create table tbl_order(id_order int,type nvarchar(40))insert into tbl_order (id_order, type) values (1234, 'A' )insert into tbl_order (id_order, type) values (1235, 'A' )insert into tbl_order (id_order, type) values (1235, 'B' )insert into tbl_order (id_order, type) values (1236, 'B' )insert into tbl_order (id_order, type) values (1237, 'C' )insert into tbl_order (id_order, type) values (1237, 'D' )insert into tbl_order (id_order, type) values (1238, 'A' )insert into tbl_order (id_order, type) values (1239, 'D' )insert into tbl_order (id_order, type) values (1239, 'B' )insert into tbl_order (id_order, type) values (1239, 'A' )select id_order ,type --,isnull(orderX,'') as number ,case when orderX > 1 then 1 else 0 end as number2 from tbl_order left join (select t2.id_order as orderX from tbl_order as t2 where (select count(t1.id_order) from tbl_order as t1 where t1.id_order = t2.id_order) = 1 )as x on tbl_order.id_order = x.orderX
Is there any better/faster select sentance to do this? i'm using sql2000.thank you