Php Mysql如何从没有特定值的字段的表中获取所有行。。?
我有一个表,其中包含Php Mysql如何从没有特定值的字段的表中获取所有行。。?,php,mysql,where,Php,Mysql,Where,我有一个表,其中包含学生id,课程id和结果。表结构如下所示 我需要得到course\u id,结果为0,另一个条件是该课程的结果可能不是1 在该图像中,course\u id633同时具有result0和1。因此,特定的课程id不会从该表中获取 问候,, John从结果1所在的表\u name中选择课程id 编辑:未使用的选择,我希望这是您正在寻找的: SELECT student_id,course_id,SUM(CASE WHEN result=1 THEN 1 ELSE 0 END)
学生id
,课程id
和结果
。表结构如下所示
我需要得到course\u id
,结果为0,另一个条件是该课程的结果可能不是1
在该图像中,course\u id
633同时具有result
0和1。因此,特定的课程id
不会从该表中获取
问候,,
John从结果1所在的表\u name中选择课程id
编辑:未使用的选择,我希望这是您正在寻找的:
SELECT student_id,course_id,SUM(CASE WHEN result=1 THEN 1 ELSE 0 END) as 0Count
FROM TableName
GROUP BY student_id,course_id
HAVING 0Count=0
说明:
student_id course_id result
3061 663 0
3061 663 1
3062 664 1
3063 665 0
查询将返回result=0
且该课程没有result=1
的学生
样本输出:
student_id course_id result
3061 663 0
3061 663 1
3062 664 1
3063 665 0
结果将是:
STUDENT_ID COURSE_ID 0COUNT
-----------------------------------
3063 664 0
啊,我明白了。我想你正在寻找这个代码
SELECT course_id FROM table_name WHERE result = 0 AND result NOT LIKE "%1%";
让我知道它是如何为您工作的。尝试以下查询:
SELECT DISTINCT t1.course_id
FROM table_name t1
WHERE t1.result = 0
AND NOT EXISTS (
SELECT 1
FROM table_name t2
WHERE t2.course_id = t1.course_id
AND t2.result = 1);
试试这个
SELECT *
FROM TABLE_NAME
WHERE course_id NOT IN
(SELECT course_id
FROM TABLE_NAME
WHERE RESULT=0
AND course_id IN
(SELECT course_id
FROM TABLE_NAME
WHERE RESULT=1))
那么你的观点是什么?你的要求是什么?你的具体要求是什么?这是“从表名称中选择课程id,其中结果=0,结果!=1”的d条件吗