Как выбрать только строки из таблицы, значение одного столбца больше, чем значение b таблицы в MySQL - PullRequest
0 голосов
/ 14 июня 2019

Таблица A:

id, name, school_code
-------------------
1,David,10601
2,Jack,10602
3,John,10603
4,Hank,10602
5,Daisy,10601
6,Kelly,10602
7,May,10602
8,Mayme,10602

Таблица B:

id, school_code,max_stu
------------------------
1,10601,10
2,10602,5
3,10603,6

Как выбрать в строках таблицы B значение max_stu больше, чем количество A таблицы (*), где a.school_code = b.школьный код?

Ожидаемый результат:

id, school_code,max_stu
------------------------
1,10601,10
3,10603,6

1 Ответ

0 голосов
/ 14 июня 2019

Один метод будет использовать коррелированный подзапрос.Это выглядит примерно так, как вы уже сформулировали.

SELECT *
       FROM `table b` `b`
       WHERE `b`.`max_stu` > (SELECT count(*)
                                     FROM `table a` `a`
                                     WHERE `a`.`school_code` = `b`.`school_code`);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...