2015-03-30 63 views
0

这里是我当前的查询: 如何在此查询中显示某些值? SQL

SELECT DISTINCT 
    grade, SNAME 
FROM 
    Grade_report 
JOIN 
    Student ON Grade_report.student_number = Student.stno 
WHERE 
    grade LIKE '[a-b]' 

我需要显示谁已收到不止一个A或B的学生什么我要补充?

+2

也许计数? – Mathemats 2015-03-30 23:17:20

+0

这与jQuery有什么关系? – 2015-03-30 23:32:57

+0

我错误地使用了jQuery作为关键字,对此我很抱歉。 – dboor129 2015-03-30 23:58:56

回答

0

我刚刚在这里创建了一些示例数据,但您的答案需要HAVING关键字。

https://msdn.microsoft.com/en-us/library/ms180199.aspx

在这种情况下,约翰是唯一的结果,因为他,你使用的是什么数据库引擎同时接受的A和B.

DECLARE @temptable AS TABLE 
      (CLASS int PRIMARY KEY IDENTITY, 
      SNAME varchar(20), 
      GRADE char(1)); 

     INSERT INTO @temptable(SNAME,GRADE) 
     VALUES ('John','A'),('Jack','B'),('John','B'),('Jack','C'),('Jill','D'); 


     SELECT * FROM @temptable 

     --This is your answer 
     SELECT SNAME,COUNT(*) 
     FROM @temptable 
     WHERE GRADE IN ('A','B') 
     GROUP BY SNAME 
     HAVING COUNT(*)>1