電子書籍の厳選無料作品が豊富!

mysq初心者です

値の取得する順番を変えないで、値を取得する方法はありますか?

会員IDが5、1、3で取得したいのですが1、3、5に並び替えられてしまいます

テーブルはIDとNAMEのみ、重複なしで、ID番号と名前番号が一致しています



sprintf('SELECT id FROM hoge2 WHERE name="%s" or name="%s" or name="%s" ',
ほげ5,
ほげ1,
ほげ3
);


$recd = array();
while ($rec = mysql_fetch_assoc($sql2)) {
$recd[] =$rec['id'];
}

A 回答 (1件)

SQLの仕様上抜き出される順番はOrder Byのみにより決定されます。

5と1と3のみでその順番に抜き出したいのであれば「order by case id when 5 then 1 when 1 then 2 when 3 then 3 else 4 end」等で対応する以外無いです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます(_ _)

>SQLの仕様上抜き出される順番はOrder Byのみにより決定されます
仕様ならしかたないです。他の方法考えますorz

お礼日時:2013/06/15 18:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!