2017-02-24 34 views
0

我需要使用电话号码作为主键从结果中获得级别4和5的标记总和。如何使用大小写在一列中使用多个条件从表中选择总和

以下方式是应该的方式,但不能用这个,我需要的,如果存在使用情况SQL语句或SQL的anothe招工作:

SELECT 
SUM(marks) 
FROM Results 
WHERE phone=343435 AND level='Level 4' AND level='Level 5'; 
+0

请提供样本数据 – mohan111

+0

而且你的问题是什么? –

回答

2

你可以使用一个OR代替ANDlevel='Level 4' OR level='Level 5'

查询

SELECT SUM(marks) 
FROM Results 
WHERE phone=343435 AND (level='Level 4' OR level='Level 5'); 

或者你可以使用一个IN操作。

查询

SELECT SUM(marks) 
FROM Results 
WHERE phone=343435 AND level IN('Level 4','Level 5'); 
+0

@UIlas。谢谢 。我第一次喜欢使用IN(..),但两次工作得很好! – user3518835

+0

还值得注意的是IN比Multiple OR更快。 – ClintB

0

与OR语句尝试,而不是和。你的意思是记录的水平场需要有值4和5,取而代之的是价值,给我行,其中的VALUE = 4或5

SELECT 
SUM(marks) 
FROM Results 
WHERE phone=343435 AND (level='Level 4' OR level='Level 5'); 
相关问题