gpt4 book ai didi

php - 如何确定单元格值是否由当前用户以外的其他用户共享

转载 作者:行者123 更新时间:2023-11-29 10:33:48 24 4
gpt4 key购买 nike

我的review_shared table 看起来像这样。列名称为review_shared_id , cat_id , review_id , user_id , contact_id .

enter image description here

我正在尝试找出一种方法来查看 $cat_id被当前用户以外的用户共享,$user_id ,在本例中是谁 10219 .

例如$cat_id188 。此信息是否与 10219 以外的用户共享?是的 - 已与 user_id 共享号码3729 .

我不知道如何继续,非常感谢您的帮助。

到目前为止我所拥有的是:

//check if $cat_id is being used by users other than $user_id
//we do this in the review_shared table
$query3 = "SELECT * FROM review_shared WHERE cat_id = ?";
$stmt3 = $con->prepare($query3) or die(mysqli_error($con));
$stmt3->bind_param('i', $cat_id) or die ("MySQLi-stmt binding failed ".$stmt3->error);
$stmt3->execute() or die ("MySQLi-stmt execute failed ".$stmt3->error);
$result3 = $stmt3->get_result();


while ($row = $result3->fetch_assoc()) {
//get the corresponding user_id for that cat_id
$matching_user_id = $row["user_id"];

If ($cat_id is shared by users other than the current user, $user_id) {


}

else {


}

最佳答案

只需使用不等于运算符将其添加到 where 子句( <>!= 都可以在 MySQL 中使用)。下面的查询将返回所有不同的用户 ID。我添加了distinct,因为看起来cat 188和相同的userid有多行,所以没有distinct ,您会多次获得相同的用户 ID。如果没有与此猫共享的其他用户,则此查询将返回 0 行。

SELECT DISTINCT
user_id
FROM review_shared
WHERE cat_id = ?
AND user_id <> ?

如果你只是想知道有多少,你可以数一下。下面的查询将返回具有一个值的一行。该值是除给定用户 ID 之外与其共享的用户数量。查询将返回值 0如果没有这样的用户。 distinct添加到计数中,以便仅对每个不同的 user_id 计数一次。否则,您的示例数据将导致 4 ,因为 cat 188 与同一用户共享了 4 次。

SELECT
COUNT(DISTINCT user_id) AS user_count
FROM review_shared
WHERE cat_id = ?
AND user_id <> ?

关于php - 如何确定单元格值是否由当前用户以外的其他用户共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46889599/

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