为什么它说列定义不明确?
Why does it say column ambiguously defined?
select a.id_progdi, a.nama_progdi, avg(b.ipk)
from tb_ipk b
join tb_mahasiswa c on b.nim = c.nim
join tb_progdi a on c.id_progdi = a.id_progdi
group by id_progdi
您有多个 id_progdi
,所以它可能不知道在 group by
中引用哪一个。将其更改为 group by a.id_progdi
在您的分组依据中,您应该添加 table 别名,因为您在多个 table 中具有相同的列名,并且数据库引擎需要知道您要引用的位置
select a.id_progdi, a.nama_progdi, avg(b.ipk)
from tb_ipk b
join tb_mahasiswa c on b.nim = c.nim
join tb_progdi a on c.id_progdi = a.id_progdi
group by a.id_progdi, a.nama_progdi
也许您有多个 table 中的 id_progdi 在您的组中使用 table 别名。
select a.id_progdi, a.nama_progdi, avg(b.ipk)
from tb_ipk b
join tb_mahasiswa c on b.nim = c.nim
join tb_progdi a on c.id_progdi = a.id_progdi
group by id_progdi
您有多个 id_progdi
,所以它可能不知道在 group by
中引用哪一个。将其更改为 group by a.id_progdi
在您的分组依据中,您应该添加 table 别名,因为您在多个 table 中具有相同的列名,并且数据库引擎需要知道您要引用的位置
select a.id_progdi, a.nama_progdi, avg(b.ipk)
from tb_ipk b
join tb_mahasiswa c on b.nim = c.nim
join tb_progdi a on c.id_progdi = a.id_progdi
group by a.id_progdi, a.nama_progdi
也许您有多个 table 中的 id_progdi 在您的组中使用 table 别名。