表的外观

StudentId, SubjcetName, Marks
1          Maths        50
1          Science      80
1          Language     70
2          Maths        80
2          Science      50
2          Language     60
3          Maths        85
3          Science      95
3          Language     60


我想从该表中获取记录-谁在数学最低50分和最高90分中获得分数,在科学方面得分低于75分。

我收到了结果

1 Maths 50
2 Maths 80
2 Science 50
3 Maths 85


如何形成查询以获取结果?

注意:主题是动态的,最小和最大也可以应用于任何主题。

最佳答案

尝试这个

(SELECT StudentId, SubjcetName, Marks
FROM table
WHERE SubjcetName = 'Maths'
AND Marks BETWEEN 50 AND 90)
UNION
(SELECT StudentId, SubjcetName, Marks
FROM table
WHERE SubjcetName = 'Science'
AND Marks < 75)

关于mysql - 如何使用具有多个最小和最大条件的MySQL获取记录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40647754/

10-13 00:58