mysql - SQL比较必须确定的2个值

标签 mysql sql

我需要从我的表 tblResults 中找出通过次数最多的类(class)。

tblResults:
StuID       Course         Symbol
1001        CSC101         P
1001        RNG101         F
1002        CSC101         P
1002        RNF101         F
1003        HAP101         P
1004        HAP101         P

即应该给予CSC101(以及所有其他类(class)(HAP101)具有相同数量的通行证)

我已经尝试过:

CREATE VIEW Part1 AS
SELECT NumbF
FROM
  (SELECT COUNT(Course) AS NumbP,
          Course
   FROM tblResults
   WHERE Symbol = 'P')
GROUP BY Course);


CREATE VIEW Part2 AS
SELECT MAX(NumbP) AS Maxnum
FROM Part1,
     tblResults
WHERE Symbol = 'P'
GROUP BY Course;


SELECT Part1.Course
FROM Part1,
     Part2
WHERE Part1.NumbP = Part2.MaxNum

但我似乎做错了什么。请帮忙

最佳答案

这样的事情应该有效:

create view yourview as
select course, count(*) passcnt
from tblResults
where symbol = 'P'
group by course

select *
from yourview
where passcnt = (select max(passcnt) from yourview)

请注意,您不需要该 View ,为了简单起见,我只是保留了它。

关于mysql - SQL比较必须确定的2个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23680679/

相关文章:

sql - 如何在 BigQuery 中将纪元转换为日期?

mysql - 我怎样才能用 SQL 进行排名

java - 如何用数据库数据java和hibernate填充组合框

mysql 查询 - 在不影响输出的情况下访问字段

php - 查询数据库来自

c++ - 用于磁盘支持的关联数组的 SQLite?

mysql - 如果我在 mysql 中将 char 的长度设置为 80,并且不对此进行验证,是否会被利用

sql - 什么查询适用于此子类型/父类(super class)型关系?

java - 测量 Java 应用程序中的 sql 执行时间

php - XML 或 SQL - 仅频繁读取数据