huerta 0 Denunciar post Postado Novembro 4, 2009 Como vai pessoal, tenho as seguintes tabelas (exemplo): CREATE TABLE Tabela1 ( Codigo1 INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, NomeUm VARCHAR(10) NULL, PRIMARY KEY(Codigo1) )TYPE=InnoDB; CREATE TABLE Tabela2 ( Codigo1 INTEGER UNSIGNED NOT NULL, DataTabela2 DATE NULL, INDEX Tabela2_FKIndex1(Codigo1) )TYPE=InnoDB; CREATE TABLE Tabela3 ( Codigo1 INTEGER UNSIGNED NOT NULL, DataTabela3 DATE NULL, INDEX Tabela3_FKIndex1(Codigo1) )TYPE=InnoDB; Eu usei: SELECT * FROM TABELA1 TB1 LEFT JOIN TABELA2 TB2 ON (TB1.Codigo1=TB2.Codigo1) LEFT JOIN TABELA3 TB3 ON (TB1.Codigo1=TB3.Codigo1) WHERE TB1.Codigo1 = numeroX ORDER BY DataTabela2 ou DataTabela3 (GOSTARIA DE ADICIONAR) Resultado que esta mostrando: TABELA1.* + TABELA2.* + TABELA3.* Preciso: TABELA2.* + TABELA3.* (SENDO 1 NULO E O OUTRO COM DADOS) ordenadas pela data Espero ter sido claro na minha duvida. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Novembro 5, 2009 select TABELA1.* , TABELA2.* , TABELA3.* .... Compartilhar este post Link para o post Compartilhar em outros sites
huerta 0 Denunciar post Postado Novembro 5, 2009 O que eu quiz dizer 'Motta' foi: Tenho 2 tabelas ( tabelas2 e tabelas3 ) com campo data de nomes diferentes (DataTabela2 e DataTabela3 ), as duas contento a chave estrangeira da tabela1, e preciso em ordem cronologica o conteudo delas, fazendo o select pela tabela1. Obs, os campos das tabelas 2 e 3 são diferentes. Usando o exemplo: um registro na tabela2 em 01/02/2009 um registro na tabela3 em 02/02/2009 um registro na tabela2 em 03/02/2009 um registro na tabela3 em 04/02/2009 Viria: tabela2 + tabela3 dados + Null em 01/02/2009 Null + dados em 02/02/2009 dados + Null em 03/02/2009 Null + dados em 04/02/2009 Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites