gpt4 book ai didi

SQL 查询以检查学生 1 是否有学生 2 的类(class)

转载 作者:行者123 更新时间:2023-12-02 00:36:21 26 4
gpt4 key购买 nike

我有一张 table ,我需要检查我拥有 ID(例如 20 和 21)的两个用户是否共享同一门类(class),只是判断真假。

Table: jos_gj_usersColumns: id_user, id_groupData Example: (20; 4)              (20; 5)              (20; 6)              (21; 6)              (21; 7)

上面的数据显示用户 20 和用户 21 共享类(class) 6,但是我如何仅通过输入 ID 而无需使用 PHP 循环遍历结果而使用 SQL 获得此信息?

最佳答案

尝试自连接:

SELECT T1.id_group
FROM jos_gj_users T1
JOIN jos_gj_users T2
ON T1.id_group = T2.id_group
WHERE T1.id_user = 20
AND T2.id_user = 21

要仅获得“真或假”结果,您可以从客户端检查结果集中是否至少存在一行,而不是获取整个结果。

或者,您可以通过将上述查询包装在另一个使用 EXISTS 的 SELECT 中,在 SQL 中完成此操作:

SELECT CASE WHEN EXISTS
(
SELECT T1.id_group
FROM jos_gj_users T1
JOIN jos_gj_users T2
ON T1.id_group = T2.id_group
WHERE T1.id_user = 20
AND T2.id_user = 21
) THEN 1 ELSE 0 END AS result

此查询返回 0(假)或 1(真)。

关于SQL 查询以检查学生 1 是否有学生 2 的类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4434581/

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