Silakan posting pertanyaan dengan data sampel, yang memudahkan jadi tes dan jawaban yang tepat.
Dalam kode Anda a1
adalah nama tabel turunan bukan nama kolom.
Fungsi agregat menerima parameter dalam hal nama kolom.
Coba yang berikut ini:
select max(av) - min(av) from
(
select avg(av1) av from
(
select avg(stars) av1
from rating join movie m using(mID)
where year < 1980
group by mID
) as av1
union
select avg(av2) av from
(
select avg(stars) av2
from rating join movie m using(mID)
where year > 1980
group by mID
) as av2
) as a1;