Jump to content


Photo

Selecionando Todos Os Dados De Multiplas Tabelas?


  • Faça o login para participar
5 replies to this topic

#1 B!ö$

B!ö$

    12 Horas

  • Usuários
  • 129 posts
  • Sexo:Masculino
  • Localidade:Randômico

Posted 05/08/2007, 20:07

Olá pessoal, estou tentando optimizar minha lógica SQL... mais estou tendo problemas, vejam:
SELECT A.*, B.* FROM tabela1 A, tabela2 B
Mas na hora de imprimir quando o campo é igual, ele obtém apenas um valor...

Trabalho com php, e gostaria de saber se teria como imprimir assim:
$sql['A.nome']
$sql['B.nome']

Valeu!

#2 Petry

Petry

    Veterano

  • Usuários
  • 1132 posts
  • Sexo:Masculino
  • Localidade:Caxias do Sul - RS
  • Interesses:- desenvolvimento WEB<br />- websemântica<br />- microformatos

Posted 06/08/2007, 08:42

SELECT A.*, B.* FROM tabela1 A, tabela2 B, where A.codigo = B.codigo
isso claro, se numa das tabelas há um relacionamento para a outra...

Posted Image

- Desenvolvedor Python/ZOPE/Plone + ArchGenXML/Poseidon - Python + Django na Universidade de Caxias do Sul
- Desenvolvedor Python + Django na World News

Blog

#3 B!ö$

B!ö$

    12 Horas

  • Usuários
  • 129 posts
  • Sexo:Masculino
  • Localidade:Randômico

Posted 06/08/2007, 10:47

Acho que não fui muito claro no meu problema, gostaria de selecionar todos os dados de ambas as tabelas, sem ter conflito.
exemplo em php, imprimiria o nome de tabela1 e da tabela2:
print $sql['tabela1.nome'];
print $sql['tabela2.nome'];

Teria como fazer isto? pois me ajudaria, anularia o uso de 2 selects...

#4 Petry

Petry

    Veterano

  • Usuários
  • 1132 posts
  • Sexo:Masculino
  • Localidade:Caxias do Sul - RS
  • Interesses:- desenvolvimento WEB<br />- websemântica<br />- microformatos

Posted 06/08/2007, 13:47

ahh axo que agora entendi, bom para isso voce terá que criar apelidos para cada campo.
SELECT A.campo1 campo1a, A.campo2 campo2a,  B.campo1 campo1b, B.campo2 campo2b FROM tabela1 A, tabela2 B

Posted Image

- Desenvolvedor Python/ZOPE/Plone + ArchGenXML/Poseidon - Python + Django na Universidade de Caxias do Sul
- Desenvolvedor Python + Django na World News

Blog

#5 B!ö$

B!ö$

    12 Horas

  • Usuários
  • 129 posts
  • Sexo:Masculino
  • Localidade:Randômico

Posted 06/08/2007, 14:23

Não teria algum jeito de generalizar esta lógica... por exemplo, as colunas da tabela1 seria a, e da tabela2 seria b.
na hora de imprimir, só definir "a" seguido da "coluna" ou vice-versa...
print $sql['anome'];
print $sql['anome'];
Desta forma que você postou, ficaria muito grande, compensaria continuar com o SELECT's...

Edição feita por: B!ö$, 06/08/2007, 14:26.


#6 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 08/08/2007, 00:03

mysql> select 1 `a.foo` from dual;

+-------+

| a.foo |

+-------+

|	 1 |

+-------+

Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq