我需要一个返回每个团队中运动员数量的查询。
它应该只显示名称长于运动员名字和姓氏的平均长度的队伍。
我有两个表团队和 sportmans 。
这是我尝试的内容:
SELECT TIMOVI,SPORTISTI COUNT(IME_PREZIME)
FROM TIMOVI
JOIN SPORTISTI
ON SIFRA=TIM,
GROUP BY TIMOVI
WHERE LENGTH(naziv)> ((AVG(LENGHT(ime_preizime)))/2)
答案 0 :(得分:0)
这样的查询怎么样:
SELECT t.name, COUNT(s.id)
FROM team t
INNER JOIN sportsman s ON s.team = t.id
WHERE LENGTH(t.name) > (
SELECT AVG(LENGTH(s2.name)) FROM sportsman s2
)
GROUP BY t.id
对于这样的架构:
CREATE TABLE sportsman (
id INTEGER,
team INTEGER,
name VARCHAR(50)
);
CREATE TABLE team (
id INTEGER,
name VARCHAR(50)
);