Хотя мой SQL ужасна, я думаю, что это может быть решена при выборе того, что вы хотите от подмножеств.
Выбрать все первые
SELECT a.FirstName, a.LastName, a.height FROM actors AS a WHERE a.gender = 'F';
Затем выберите максимальную (высота) от этого подмножества с дополнительными полями, которые вы хотите.
SELECT m.FirstName, m.LastName, max(m.height) FROM (SELECT.. AS a) AS m
Затем отфильтровать то, что вы хотите, если вам нужно
SELECT f.FirstName, f.LastName FROM (SELECT..(SELECT..AS a) AS m) AS f
Все вместе выглядит как этот
SELECT f.FirstName, f.LastName FROM
(SELECT m.FirstName, m.LastName, max(m.height) FROM
(SELECT a.FirstName, a.LastName, a.height FROM
actors AS a WHERE a.gender = 'F') AS m
)as f;
я признаю это извилистый, но он работает в моей MySQL;)
Редактировать: Многие извиняются за ошибку, но я думал, что это касается MySQL. Это мой первый пост, и я догадываюсь, что у меня есть спусковой крючок. Я считаю, что подмножества являются базовым SQL.
@Dexter Причина Ваш запрос не работает, потому что ваш внутренний запрос возвращал макс для обоих полов, а затем не было никакой высоты согласования при ограничивается «F» на внешнем запросе. Вы должны повторить условие (и) в обеих частях. – shawnt00