Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mySQL IF语句,如何匹配一个值并添加多个条件_Mysql - Fatal编程技术网

mySQL IF语句,如何匹配一个值并添加多个条件

mySQL IF语句,如何匹配一个值并添加多个条件,mysql,Mysql,在为我所在的学校做项目时,我需要在mySQL查询中执行一些IF类型的语句。例如,如果他们是HS学生,他们是否提交了此表格 例如,我希望能够检查是否根据个人年级向学校发送了多份表格,并在所有学生都缺少某种表格的情况下返回 SELECT studentId FROM students WHERE formBirthCertificate != 1 AND anotherForm != 1 and familyForm != 1 IF (gradeLevelId >= 9 then

在为我所在的学校做项目时,我需要在mySQL查询中执行一些IF类型的语句。例如,如果他们是HS学生,他们是否提交了此表格

例如,我希望能够检查是否根据个人年级向学校发送了多份表格,并在所有学生都缺少某种表格的情况下返回

SELECT studentId 

FROM students 

WHERE formBirthCertificate != 1 AND anotherForm != 1 and familyForm  != 1

IF (gradeLevelId >= 9 then formHighSchool  !=1)//they are High School student did they submit a form

IF  (gradeLevelId >= 5 then formStudent !=1)
这不是一个非此即彼或类型或条件,更重要的是如果该人在高中(9年级),检查他们是否也提交了此表

任何帮助都将不胜感激

SELECT studentId, 
(case when gradeLevelId >= 9 then 0 ELSE 1 end) AS formHighSchool, 
(case gradeLevelId >= 5 then 0 ELSE 1 end) AS formStudent
FROM students 
WHERE formBirthCertificate != 1 AND anotherForm != 1 and familyForm  != 1
应该返回如下内容:

studentId   formHighSchool   formStudent
    1             0              1
    2             0              0
    3             1              0
    4             1              1
   ...           ...            ...

您已经知道它是正确的:
从学生中选择studentId,其中(formBirthCertificate!=1)和(anotherForm!=1)和(familyForm!=1)
是有效的SQL(我添加括号只是为了澄清,没有括号应该可以工作)。