我已经实现了一个解决方案来过滤我的表格,但它也让我失去了我想要的主要功能之一。按 ID 描述分组,因此最新的内容发布在顶部。
第一次查看没有任何过滤器的表格时,我希望它也按 ID 描述分组,但过滤器的设置方式我无法做到。有什么方法可以解决它吗?我的代码如下
<?php
// Check connection
require '../inc/connection.php';
//Select All from Game
$result_else = "SELECT * FROM game WHERE listDate >= NOW() - INTERVAL 1440 MINUTE ";
//Search Function
if (isset($_POST['search'])) {
$search_term = mysqli_real_escape_string($con, $_POST['search_box']);
$result_else .= "AND Region LIKE'%{$search_term}%'";
$result_else .= "OR gameType LIKE'%{$search_term}%' GROUP BY id DESC LIMIT 25";
}
?>
如果我希望没有任何过滤器的表的原始视图具有按 ID 描述限制 25 分组,这将如何完成?
感谢您的任何帮助
是的,可以做到
$result_else = "SELECT * FROM game WHERE listDate >= NOW() - INTERVAL 1440 MINUTE ";
//Search Function
if (isset($_POST['search'])) {
$search_term = mysqli_real_escape_string($con, $_POST['search_box']);
$result_else .= "AND Region LIKE'%{$search_term}%'";
$result_else .= "OR gameType LIKE'%{$search_term}%' ";
}
// $result_else .= "GROUP BY id DESC LIMIT 25";
$result_else .= "ORDER BY id DESC LIMIT 25";
但不确定您是在要求GROUP BY
还是ORDER BY
GROUP BY
对内容进行分组。
ORDER BY
按asc
或desc
顺序对内容进行排序
也许它可以帮助你:
<?php
// Check connection
require '../inc/connection.php';
//Select All from Game
$result_else = "SELECT * FROM game WHERE listDate >= NOW() - INTERVAL 1440 MINUTE ";
//Search Function
if (isset($_POST['search'])) {
$search_term = mysqli_real_escape_string($con, $_POST['search_box']);
$result_else .= " AND Region LIKE'%{$search_term}%'";
$result_else .= " OR gameType LIKE'%{$search_term}%' GROUP BY id DESC";
}
$result_else .= " ORDER BY id LIMIT 25";
?>