首页  >  问答  >  正文

使用PHP和MYSQL在MariaDb中实现数据排序

我正在尝试按照我认为的访问顺序检索记录。

我的代码如下:

要搜索的数据:

$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."";

结果是(我将其放在列表中以便更容易看到与原始结果的对比):

我不确定我尝试做的事情是否可行,但欢迎建议。

WW

P粉085689707P粉085689707222 天前523

全部回复(2)我来回复

  • P粉638343995

    P粉6383439952024-04-04 00:33:21

    你需要在代码中添加引号

    $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;

    回复
    0
  • P粉131455722

    P粉1314557222024-04-04 00:11:43

    你需要在$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)"

    回复
    0
  • 取消回复