以下は、MySqlデータベースのテーブルをループし、一致するテーブルセル内のすべての車のレコードを示しています。MySqlクエリでORDERBYコマンドを使用して特定の列で並べ替えることができますが、特定のレコードを一番上に配置して、残りのすべての一致を一覧表示するにはどうすればよいですか?
たとえば、この前に、ユーザーが$ _POSTメソッドを使用してお気に入りの車( $_POST['user_car']
)と必要な仕様( )を選択する簡単なフォームがあります。$_POST['user_spec']
したがって、私のクエリでは、選択した仕様に一致するすべてのレコードが表示されますが、選択した車をリストの一番上に配置し、残りの車をフォローしたいと思います。
$query_params = array(
':spec' => $_POST['user_spec']
);
$query = "
SELECT
*
FROM
table
WHERE
spec=:spec
";
try {
$stmt = DB::get()->prepare($query);
$stmt->execute($query_params);
$rows = $stmt->fetchAll();
}
catch(PDOException $ex) {}
foreach($rows as $row):
$cell .= '<td>
<input type="checkbox" '.$check.' name="spec[]" value="'.$row['id'].'"/><span> '.$row['spec'].'
</td>';
endforeach;