Thanks,All,         To Tino,I want to order by IN condition "(6,3,4,10,7)".
         To Sergio,my answer is "Yes".
         To Kenny,I think this is not the result I want to get.
         To Scott,In database,there are thousands of  products.the select
query is generated by application,and it is not sure how many product_id
in condition,maybe the next query would be .........product_id in
(4,26,7,8,9,23,27,54)
         Maybe,temp table is a solution,but that would be performance issue.

         thanks

2009/6/19 Scott Marlowe <scott.marl...@gmail.com>

> On Fri, Jun 19, 2009 at 3:50 AM, Tony Liao<tonyl...@yuehetone.com> wrote:
> > Hi,All
> >        for example,I have a query as this
> >          select id,product_id from table_name where product_id in
> > (6,3,4,10,7) order by .....
> >        the results I want to get as bellow:
> > id................product_id......................
> > 33...............6...................................
> > 40...............6..................................
> > 12...............3....................................
> > 25...............4.................................
> > 10...............4................................
> > 17...............10.................................
> > 43................7...................................
> >           any Idea? thanks
>
> I take it you want the set sorted by product_id order of 6,3,4,10 ???
>
> order by
> case when product_id = 6 then 1 when product_id=3 then 2 when
> product_id=4 then 3 when product_id=10 then 4 else product_id+1000
> end;
>



-- 
Tony Liao

Reply via email to