亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

按特定順序選擇特定行

按特定順序選擇特定行

PHP
慕斯王 2023-04-21 13:24:32
我有一個腳本(在 PHP 中),它通過一系列不同的比較來生成表中按行 ID 排序的條目數組。然后我將數組內爆成一個字符串并使用 WHERE 選擇那些特定的行,但是我不知道如何按照它們在數組中的相同順序對它們進行排序。$order_array = [50,49,42,52,53,54,51,48,47]$order_string = implode(',', $order_array);// echo $order_string returns '50,49,42,52,53,54,51,48,47'$sql_todo = "SELECT * FROM todo_list WHERE id IN ({$order_string})";    if ($result_todo = mysqli_query($link, $sql_todo)) {        while ($row_todo = mysqli_fetch_assoc($result_todo)) {這成功地選擇了所需的行,但它們與數組的順序不同。我知道我沒有告訴它以這種方式訂購它們(所以它沒有),但我不知道如何實現它。謝謝你的時間,
查看完整描述

1 回答

?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

您可以使用以下field()功能:

"SELECT?*?FROM?todo_list?WHERE?id?IN?({$order_string})?ORDER?BY?FIELD(id,?{$order_string})"

field()返回其第一個參數在列表中的索引,您可以直接將其用于排序。

旁注:您可能應該使用準備好的語句而不是在查詢字符串中連接值(如果您的值來自代碼外部,這是必須的)。


查看完整回答
反對 回復 2023-04-21
  • 1 回答
  • 0 關注
  • 131 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號