按自定义数组对行排序

ybzsozfc  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(387)

是否可以按自定义数组对行进行排序 ids 从另一张table或者其他什么地方给的。

  1. $str = "5,2,3,6,911,18,118,65,985,15...";
  2. $arr = explode(',', $str);
  3. function get_titles($status){
  4. global $db;
  5. $sql = "select * from arts where status = :astatus order by " . $arr . " asc";
  6. $st = $db->prepare($sql);
  7. $st->execute([":astatus" => $status]);
  8. ...
  9. }
wj8zmpe1

wj8zmpe11#

如果你想定制的话 id 订单。。。

  1. # $str = "5,2,3,6,911,18,118,65,985,15...";
  2. # Values separated by comma
  3. # It can be from array
  4. # $str = implode(",",[5,2,3,6,911,18,118,65,985,15])
  5. $str = "5,2,3,6,911,18,118,65,985,15";
  6. function get_titles($status,$arr){
  7. global $db;
  8. $sql = "SELECT * FROM arts WHERE status = :astatus ORDER BY FIELD(id,".$arr .") ASC";
  9. $st = $db->prepare($sql);
  10. $st->execute([":astatus" => $status]);
  11. ...
  12. }
  13. get_titles($status,$str)
展开查看全部

相关问题