我已经为我的网站设置了数据库,但我对如何编写 SQL 查询来显示我想要的信息感到有点困惑。
这是我的数据库如何设置的图像以及我想要如何显示它的示例:
这是我为获取信息而编写的 SQL 查询(我愿意编写更好的解决方案)
SELECT * FROM drinks_category, drinks_lookup, drinks
WHERE drinks.drink_id = drinks_lookup.drink_id
AND drinks_lookup.drinks_category_id = drinks_category.drinks_category_id
这为我提供了所有信息,但我不确定如何编写输出以使其显示我想要的方式。
最佳答案
一种解决方案是按类别订购:
SELECT *
FROM drinks_category, drinks_lookup, drinks
WHERE drinks.drink_id = drinks_lookup.drink_id
AND drinks_lookup.drinks_category_id = drinks_category.drinks_category_id
ORDER BY drinks_category.drink_category_title
这样,您就可以在 PHP 中循环,并在出现新类别时输出新 header 。像这样的事情:
<?php
$last_category = 0;
foreach($data as $row) {
if($row['drinks_category_id'] != $last_category) {
echo '<h1>' . $row['drink_category_title'] . '</h1>';
}
echo '<div>' . $row['drinks_name'] . '</div>';
$last_category = $row['drinks_category_id'];
}
?>
您可能应该使用嵌套的 html 列表而不是上面的标记,但这应该可以帮助您入门。
关于php - 我不知道如何编写 sql 查询来显示我想要的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16753200/