如何在不进行第二次搜索的情况下“排序”准备好的选择语句

时间:2018-10-17 20:23:03

标签: php mysqli sql-order-by prepared-statement

是否可以在不准备其他选择的情况下订购准备好的sql?

$stmt = $conexao->stmt_init();
$stmt->prepare("SELECT * FROM esc_usuarios WHERE usu_codigo = ?");
$stmt->bind_param("s",  $usu_codigo);
$stmt->execute();

我想从usu_datacadastro获取数据,然后订购:

SELECT * FROM esc_usuarios WHERE usu_indicador_codigo = ? ORDER BY usu_datacadastro DESC LIMIT 5

但是我已经有第一个sql提供的数据,我只需要按顺序执行并在某处回显即可。

1 个答案:

答案 0 :(得分:0)

如前所述,类似的东西可能会帮助您http://php.net/manual/en/function.usort.php

usort(
  $data,
  function($arr1, $arr2) { 
      // descending 
      return strcmp($arr2['usu_datacadastro'], $arr1['usu_datacadastro']);
  });

如果您想保留数组的原始顺序,建议您按照所需顺序向数组添加指针/引用,而不是克隆数组。