2017-03-17 5 views
1

in句に挿入されたIDでSQLクエリを注文するためにできることは何ですか?フィルタリングの順序をどのように並べ替えるのですか

のような:

結果は WHERE IN (...)フィルタで注文するエントリが注文を受けることができる方法
47184971... 
47863101... 
47185121... 
47185154... 

select oh.orderID, oh.orderType, oh.state, oh.orderDateTime 
from orderHeaders oh 
where oh.orderID in (
47185154, 
47185121, 
47184971, 
47863101) 

orderIDフィールドは次のように来ますか?

答えて

1

順にそれらを定義することができます

select oh.orderID, oh.orderType, oh.state, oh.orderDateTime 
from orderHeaders oh 
where oh.orderID in (47185154, 47185121, 47184971, 47863101) 
order by field(oh.orderID, 47185154, 47185121, 47184971, 47863101); 
+0

くそを!私は今日、新しいことを学びます** **ありがとうございます!これは年齢のために私に悩まされており、今は実際にそれを求める時間がかかりました:) – balexandre

0

あなたがfield()を使用することができます句

ORDER BY 
CASE oh.OrderID 
WHEN '47185154' THEN 1 
WHEN '47185121' THEN 2 
WHEN '47184971' THEN 3 
WHEN '47863101' THEN 4 
ELSE 5 
END 
関連する問題