gpt4 book ai didi

php - MySQL、PHP : echo IDs from smalest to largest

转载 作者:行者123 更新时间:2023-11-29 15:58:33 25 4
gpt4 key购买 nike

我在 PHP 中有简单的代码,实际代码抛出 MySQL 表中具有偶数 ID 的所有项目以及其下具有奇数 ID 的所有项目。

我需要将所有包含内容的 ID 按从最小到最大的顺序列出。

if( $db-> connect_error ) {
die( "Not connected" . $db-> connect_error );
}

$sqlEven = "SELECT * FROM documents WHERE MOD (id,2)=0";
$resultEven = $db-> query($sqlEven);

if( $resultEven-> num_rows ) {
while( $rowEven = $resultEven-> fetch_assoc() ) {
echo $rowEven["id"] . "<li class=\"dark\"><a href=\"" . $rowEven["url"] . "\">" . $rowEven["name"] . "</a></li>";
}
}

if( $db-> connect_error ) {
die( "Not connected" . $db-> connect_error );
}

$sqlOdd = "SELECT * FROM documents WHERE MOD (id,2)<>0";
$resultOdd = $db-> query($sqlOdd);

if( $resultOdd-> num_rows ) {
while( $rowOdd = $resultOdd-> fetch_assoc() ) {
echo $rowOdd["id"] . "<li class=\"light\"><a href=\"" . $rowOdd["url"] . "\">" . $rowOdd["name"] . "</a></li>";
}
}

最佳答案

您可以将其简化为一个查询,并在 PHP 中检查该数字是偶数还是奇数。使用三元运算符,可以内联完成。使用 ORDER BY MOD(id, 2), id (先按偶数排序,然后升序排序),您将获得按偶数和奇数排序的数据(请参阅实时 fiddle : http://sqlfiddle.com/#!9/af25e5/2 )。

这样,您只需要一个查询和一个循环。

if ($db->connect_error) {
die("Not connected: " . $db->connect_error);
}

$sql = "SELECT * FROM documents ORDER BY MOD(id, 2), id";
$result = $db->query($sql);

if ($result->num_rows) {
while ($row = $result->fetch_assoc()) {
echo $row["id"] . '<li class="'.($row['id'] % 2 == 0 ? 'dark' : 'light').'"><a href="'.$row["url"].'">'.$row["name"]."</a></li>";
}
}

关于php - MySQL、PHP : echo IDs from smalest to largest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56330639/

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