【问题标题】:How to stop ordering CONCAT REGEXP MySQL如何停止订购 CONCAT REGEXP MySQL
【发布时间】:2019-10-03 16:18:55
【问题描述】:

我有以下代码强制我将值从最低到最高排序。

$values = '4|2|7|1|20';

$test = $db->QueryFetchArrayAll("SELECT id FROM user WHERE (CONCAT(',', id, ',') REGEXP ',($values),')");

foreach ($test as $test_as) {
  echo $test_as['id'].',';
}

// Output:
1,2,4,7,20

// Should be same as string values:
4,2,7,1,20

我如何才能停止默认订购并按values 订购?

【问题讨论】:

    标签: mysql concat


    【解决方案1】:

    添加一个

    ORDER BY FIELD(id,4,2,7,1,20);
    

    到您的 SELECT。

    在进行测试时,您仍然应该使用准备好的语句。

    【讨论】:

      猜你喜欢
      • 2016-11-22
      • 2017-01-15
      • 2019-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-10
      相关资源
      最近更新 更多