Dúvida com Select

Estou utilizando MySQL e estou com uma duvida, tentei porem sem sucesso

Eu tenho esta consulta que funciona, mas nao quero que mostre os IDs e sim os nomes destes IDs.
Como eu faço isso?

SELECT c.id_customer, u.id_team, c.system, u.id_user, c.start_date, c.end_date FROM changes c, usuario u WHERE u.id_flm=7 AND c.id_user = u.id_user

Resultado:

meu diagrama

É só usar joins, você já fez isso com usuário, então ao invés de “u.id_user”, você já poderia mostrar “u.name”, basta fazer o mesmo com a tabela “customer”.

mas como eu mostro u.name se a referencia da tabela nao tem u.name? e sim u.id_user

fiz com inner join, mas ainda estou com esta duvida…

SELECT c.id_customer, c.system, u.id_team, u.id_user
FROM changes c 
INNER JOIN usuario u ON c.id_user = u.id_user
INNER JOIN customer ct ON c.id_customer = ct.id_customer 
INNER JOIN team t ON u.id_team = t.id_team

O que importa é a tabela, no momento que você fez o join, ou seja, você disse como as tabelas se ligam, todos os campos da tabela estão disponíveis pra você. Você pode fazer assim:
SELECT c.id_customer, c.system, u.id_team, u.id_user, u.name, ct.customer_name FROM changes c INNER JOIN usuario u ON c.id_user = u.id_user INNER JOIN customer ct ON c.id_customer = ct.id_customer INNER JOIN team t ON u.id_team = t.id_team

Vê se já não retorna o que você quer.

1 curtida