select *, (select id_usuario from tb_amigos where id_amigos = 1 limit 1) as id_usuario from tb_upload U
inner join tb_arquivos A on A.id_arquivo = U.id_arquivo
inner join tb_amigos AM on AM.id_usuario=A.id_usuario
where AM.id_usuario = id_usuario AND AM.id_amigos = 1
Erro em subquery
3 Respostas
erro: ERRO: referência à coluna “id_usuario” é ambígua
Parece que o SGBD não esta conseguindo entender que o usuário do resultado é o que vc deseja comparar no where
select *, (select id_usuario from tb_amigos where id_amigos = 1 limit 1) as id_usuario from tb_upload U
inner join tb_arquivos A on A.id_arquivo = U.id_arquivo
inner join tb_amigos AM on AM.id_usuario=A.id_usuario
where AM.id_usuario = id_usuario AND AM.id_amigos = 1
Pela query seu banco parece ser MySQL.
Tenta fazer a subquery dentro do where
select * from tb_upload U
inner join tb_arquivos A on A.id_arquivo = U.id_arquivo
inner join tb_amigos AM on AM.id_usuario=A.id_usuario
where AM.id_usuario = (select id_usuario from tb_amigos where id_amigos = 1 limit 1) AND AM.id_amigos = 1
acabei de fazer isso e deu certo, brigado!!