我无法用语言表达,因为我并不擅长英语,所以我只是举个例子。因此,我无法真正搜索如何做到这一点。希望你明白。
例如:假设我有一个像这样的表设置。
+-------------+---------+---------+----------+
| Category_ID | User_ID | Info1 | Info2 |
+-------------+---------+---------+----------+
| 1 | 1 | 'Info1' | 'Info2' |
| 1 | 2 | 'Info3' | 'Info4' |
| 1 | 3 | 'Info5' | 'Info6' |
| 1 | 4 | 'Info7' | 'Info8' |
| 1 | 5 | 'Info9' | 'Info10' |
+-------------+---------+---------+----------+
这样的事情。所以我想要的是让每个使用/的category_id为1的用户。然后打印出他们拥有的信息。这甚至可能吗?只是向我解释如何做到这一点我已经有了一个获取信息进出mysql的方法。
注意#1:我们的想法是为每个用户打印一个div模板,这样就像列表一样。
说实话,我唯一尝试的是' SELECT * FROM table WHERE Category_ID = 1 GROUP BY column_choice' 。
你希望你们明白我说的话。对不起,我不太擅长英语。
答案 0 :(得分:1)
如果你想要全部取出它们并将它们放在div中。你可以试试这个:
if($stmt = $YourConnection->prepare("SELECT Information FROM yourTable WHERE Category_ID = 1")){
$stmt->execute();
$stmt->bind_result($information);
while($stmt->fetch()){
?>
<div>
<?php echo $information; ?>
</div>
<?php
} /* END OF WHILE LOOP */
$stmt->close();
} /* END OF PREPARED STATEMENT */
我希望您知道如何建立连接,只需替换上面所需的表名和连接变量。
答案 1 :(得分:0)
使用SQL命令:
SELECT * FROM table WHERE Category_ID=1;
答案 2 :(得分:0)
SELECT Information FROM table_name WHERE Category_ID = 1
答案 3 :(得分:0)
你有三种方法可以做到。
首先:使用表格的笛卡尔积并过滤掉它:
SELECT t.User_ID, u.ID, u.username, u.email FROM table AS t, users AS u WHERE t.Category_ID = 1 AND t.User_ID = u.ID;
第二:将两张桌子连在一起得到你的结果:
SELECT t.User_ID, u.username, u.email FROM table AS t NATURAL JOIN users AS where t.Category_ID = 1;
第三步:使用嵌套查询获取类别#1中的用户ID,然后查询用户表并按前一部分中的集合对其进行过滤。
SELECT username, email FROM users WHERE ID in (SELECT User_ID FROM table WHERE Category_ID=1;
希望这有帮助。