gpt4 book ai didi

php - 我的查询中的 MYSQL 排序列

转载 作者:行者123 更新时间:2023-11-29 05:36:12 26 4
gpt4 key购买 nike

我一直在尝试使用 PHP 使大量数据以表格结构整齐地显示,但我必须说我遇到了困难。我终于能够调用列,这样如果我添加一个字段,它总是会把它添加到我的表中,我希望这很容易管理。但是,当我最初设置表格时,我将其放在随机顺序中。现在,当我使用 DESCRIBE table 时,它会以准确的顺序向我提供它们,但我找不到更好地组织它们的方法。对于我拥有的表格,在数据库末尾说月/年是没有意义的。

<?php 
require 'connect.php';
?>
<h3>Monthly Finances | <a href="new.php">Add New Month</a> </h3>
<table border="1" bordercolor ="#000000">
<tr>
<?php
$columns = "DESCRIBE `month` ";
if($query_run_columns = mysql_query($columns)){
$columnNames = array();
while($column = mysql_fetch_assoc($query_run_columns)){
echo '<th>'.$column['Field'].'</th>';
}
}else{
echo'sql error';
}

?>


<?php
$gatherdata = "SELECT `month`, `year`,`rent`,`electric`,`cable`,`cellphone`,`renters` FROM `month` ";
if($query_run = mysql_query($gatherdata)){

while($row = mysql_fetch_assoc($query_run)){
$rent = $row['rent'];
$electric = $row['electric'];
$cable = $row['cable'];
$cellphone = $row['cellphone'];
$renters = $row['renters'];
$month = $row['month'];
$year = $row['year'];

echo '<tr>';
echo '<td align="center">'.$month.'</td>';
echo '<td algin="center">'.$year.'</td>';
echo '<td align="center">'.$rent.'</td>';
echo '<td align="center">'.$electric.'</td>';
echo '<td align="center">'.$cable.'</td>';
echo '<td align="center">'.$cellphone.'</td>';
echo '<td align="center">'.$renters.'</td>';
echo '</tr>';
}
}else{
echo 'query error';
}
?>
<br>View by month
</table>
<form action="index.php" method="GET">
<select name="months" value="all">
<?php
$gathermonths = "SELECT `month`, `year` FROM `month";

if($query_month_selector = mysql_query($gathermonths)){
while($month_row = mysql_fetch_assoc($query_month_selector)){
$month = $month_row['month'];
$year = $month_row['year'];

echo '<option value="'.$month.' '.$year.'">' .$month.' '.$year.'</option>';
}
}
echo $_GET['months'];
?>
<input type="submit" value="View Selected Date"></input>
</select>
</form>

我的代码远未完成或有序,但我一直在这个项目上懈怠,当我有更多时间时,我会更多地清理它。但是,如果您能帮助我了解一种有效的组织方法,我们将不胜感激。

最佳答案

您的表是否包含索引/ID?

您可以通过“ORDER BY”轻松地按升序/降序排列它们

ALTER TABLE `table_name` ORDER BY `id`

注意默认的 ORDER BY 是升序的。如果要降序,请将 DESC 放在末尾。

如果你希望你的 mysql 查询以有序的方式输出结果,你也可以在查询中使用 ORDER BY:

$gathermonths = "SELECT `month`, `year` FROM `month` ORDER BY `month` DESC";

还有 GROUP BY 函数,如果您想按月对结果进行分组:

$gathermonths = "SELECT `month`, `year` FROM `month` GROUP BY `month`";

关于php - 我的查询中的 MYSQL 排序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10367171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com