我想在其个人资料中统计所有用户添加的朋友。例如,这里用户1有2个朋友,所以我想显示Friends(2)
。
我的DB:
Table: mls_users
-------------------------------------------
id | username | password | name | surname |
1 me **** Alex Alex
2 Ana ****** Maria Jade
3 Diana **** Ladys Becky
-------------------------------------------
Table: myfriends
-----------------------
id | myid | myfriends | <- my friends id
-----------------------
1 1 2
2 2 3
这是我到目前为止尝试过的代码。
<?php
include 'sql/db-conn.php';
$myid = $_SESSION['user'];
$frnd = $_GET['u'];
$friend_count = mysqli_query($db,"
SELECT * FROM `mls_users` U LEFT JOIN `myfriends` F on `f`.`myid` = $frnd AND CASE WHEN `F`.`myfriends` = $frnd THEN `F`.`myid` = $myid END where `U`.`id` != $myid");
$mu = mysqli_num_rows($friend_count);
?>
<h5 class="margin-b-10">Friends (<?php echo $mu;?>)</h5>
答案 0 :(得分:0)
除非你遗漏了关于表格设计的内容,否则这看起来很简单。
也没有必要加入表格,因为您想要的答案完全来自myFriends。
"SELECT COUNT(*) as count_friends FROM myFriends WHERE myid = $myid"
除非出现语法错误,否则此查询不会失败,并且您将需要获取一行,并返回一列,这是您的计数。