2016-07-24 46 views
1

3つの特定のレコードを選択したい残りはランダムである必要があります。MySQLの列のカスタム注文

EX:

Database:Records 

1 
2 
3 
4 
5 
6 
7 
8 
9 
10 

私は 2,5,8を選択します。

+0

あなたの入力は何ですか? 「2,5,8」? – 1000111

+0

私はリストビューでそれを移入する '、 場合、ID = 2、次いで0 ID = 5を1 ID = 8を2 他の3末端によってテーブル名順SELECT * FROM ID ' –

答えて

0

あなたはWORKING DEMO

EDITご確認くださいCASE WHENFIND_IN_SET

SELECT 
* 
FROM table_jess 
ORDER BY 
CASE WHEN FIND_IN_SET(id,'2,5,8') > 0 THEN 0 ELSE id END,id 

の助けを借りて、これを達成することができます:あなたは残りのランダムな結果をしたい場合は

をエントリは、次のクエリを使用します。

SELECT 
* 
FROM table_jess 
ORDER BY 
CASE WHEN FIND_IN_SET(id,'8,2,5') > 0 THEN 0 ELSE RAND() END,id; 

WORKING DEMO

+0

ありがとう!もし私が8,2,5だけを選択したいのであれば –

+0

それは単純すぎる。 'SELECT * FROM table_jess WHERE id IN(2,5,8)' – 1000111

0

2つの異なるクエリを作成し、結果を結合してみませんか?

+0

VB.net –