Exibir duas tabelas (INNER JOIN)

3 respostas
jtablejavamysql
P

Boa noite
Possuo duas tabelas, queria exibir a de forma que possa escolher quais os campos que vão ser exibidos de cada uma delas, estou conseguindo fazer a comparação com inner join de um campo em comum nas duas tabelas e exibir, porem exibe todos os campos das duas tabelas…

Tabelas

agenda:
Codigo
Codigo_carrinho
Status
Tipo
Nm_Cliente
Dt_Orc
VL_Obra
VL_Prod
VL_Total

pedido:
Codigo
Codigo_Orca
Status
Dt_Atend

No meu frame uso seguinte linha para exibir :
SELECT *FROM agenda INNER JOIN pedido ON agenda.Codigo=pedido.Codigo_Orca;

Queria manter as colunas que forem iguais do pedido excluindo alguns campos da agenda, tambem queria entender com usar o AS junto com inner join

Obrigado!

3 Respostas

E

invés de select * vc coloca select pedido.* , para exibir todas as colunas do pedido, depois complementa com os da agenda select pedido.*, agenda.tipo … e assim por diante, ou vc pode definir alias para as tabelas:

SELECT *FROM agenda a INNER JOIN pedido p ON agenda.Codigo=pedido.Codigo_Orca;

e fazer

select p.*, a.tipo e assim por diante

J

Para selecionar somente algumas colunas você deve especificar no seu select quais as colunas que você deseja recuperar.

Exemplo:

Select ped.codigo, ped.status, to_char(ped.dt_atend, 'DD/MM/YYYY') as dt_atend,
age.tipo, age.nm_cliente, age.vl_total
from pedido ped
join agenda age on(ped.codigo_orca = age.codigo);

Perceba que informei todas as colunas que desejo que o select apresente como resultado!

A respeito do comando "as", fiz um exemplo na formatação da data, a coluna de data formatada será apresentada como "dt_atend", caso eu não tivesse renomeado ela seria apresentada como "to_char(ped.dt_atend, 'DD/MM/YYYY')", basicamente o comando é para este tipo de utilização, renomear colunas da maneira que desejar.

P

Valeu galera me ajudou muito no entendimento do join, consegui renomear as duas tabelas e pelo nome que atribui consegui escolher as colunas, até mesmo com condições para executar pesquisas… Obrigado mesmo!!!

Codigo para carregando Tabela:
SELECT p.Codigo as N,p.Status, a.Nm_Cliente as Solicitante,a.Tipo,p.Dt_Atend as Agendado,a.VL_Obra as Instalacao,a.VL_Prod as Produtos,a.VL_Total as Total FROM agenda a INNER JOIN pedido p ON a.Codigo=p.Codigo_Orca Order by p.Codigo desc

Criado 21 de fevereiro de 2017
Ultima resposta 21 de fev. de 2017
Respostas 3
Participantes 3