我有问题,我需要帮助
这是我的查询
ALTER VIEW contrato AS
SELECT formando.nome, formando.bicc, formando.nif, formando.escagr, a.designacao, gf.nome, t.nome from formando
JOIN grupo_formando gf ON formando.id = gf.formando_id
JOIN aluno al on formando.id = al.formando_id
JOIN turma t on al.turma_id = t.id
JOIN acao a on t.acao_id = a.id
这是我的问题:1060重复列错误' nome'
任何人都知道如何解决这个问题?
答案 0 :(得分:0)
gf.nome is not a column of your table/view grupo_formando, go back to it and check that you have spelled the column name correctly and that it does exist
答案 1 :(得分:0)
您需要将formando.nome
或gf.nome
AS别名为别名,以避免在结果集中包含两个nome
列。
例如:
SELECT formando.nome AS nome_1...
答案 2 :(得分:0)
视图中的以下列将具有相同的名称:
select formando.nome, gf.nome, t.nome ...
当你调用视图时,sql如何知道哪个列是nome? 您需要为每列提供自己的名称(别名),例如:
select formando.nome as formando_nome, gf.nome as gf_nome, t.nome as t_nome ...