使用PHP和MYSQL在MariaDb實現資料排序
P粉085689707
P粉085689707 2024-04-03 12:44:47
0
2
528

我正在嘗試按照我認為的訪問順序檢索記錄。

我的程式碼如下:

要搜尋的資料:

$to_check="Yes_ij_affirmation', ',_cm', 'there_px_ex', 'is_vbz_1', '._fs";

選擇語句:

$sql = "SELECT wd, wd_ps2, rt1, rt4, definition FROM august_2022 WHERE wd_ps2 IN ($to_check) order by ".$to_check."";

結果是(我將其放在列表中以便更容易看到與原始結果的對比):

  • 是_ij_確認
  • there_px_ex
  • ._fs(應該是最後一個)
  • ,_cm(應該是第二個)
  • is_vbz_1(應該是第三個)

我不確定我嘗試做的事情是否可行,但歡迎建議。

WW

P粉085689707
P粉085689707

全部回覆(2)
P粉638343995

你需要在程式碼中加入引號

$to_check="'Yes_ij_affirmation', ',_cm', 'there_px_ex', 'is_vbz_1', '._fs'";

並且選擇語句應該像這樣:

$sql = "SELECT wd, wd_ps2, rt1, rt4, definition FROM august_2022 WHERE wd_ps2 IN ($to_check) order by " .$to_check;
P粉131455722

你需要在$to_check的開頭和結尾加上引號。

然後你可以使用FIELD()函數來依照列表中的位置進行排序。

$to_check="'Yes_ij_affirmation', ',_cm', 'there_px_ex', 'is_vbz_1', '._fs'";

$sql = "SELECT wd, wd_ps2, rt1, rt4, definition 
        FROM august_2022 
        WHERE wd_ps2 IN ($to_check) 
        order by FIELD(wd_ps2, $to_check)"
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!