Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera, é o seguinte: vocês sabem como faço pra pegar o valor de dois campos de duas tabelas e usar como se fossem um campo só?Vou explicar melhor, eu tenho duas tabelas
> CREATE TABLE `table_jogos` (`id` INT( 250 ) NOT NULL AUTO_INCREMENT ,`datatempo` DATETIME NOT NULL ,`nome` VARCHAR( 250 ) NOT NULL ,PRIMARY KEY ( `id` ) );
> CREATE TABLE `table_filmes` (`id` INT( 250 ) NOT NULL AUTO_INCREMENT ,`datatempo` DATETIME NOT NULL ,`nome` VARCHAR( 250 ) NOT NULL ,PRIMARY KEY ( `id` ) );
Dados:
INSERT INTO table_filmes (datatempo,nome) VALUES ('2005-02-27 23:02:05', 'O Senhor dos Anéis - O Retorno do rei');INSERT INTO table_filmes (datatempo,nome) VALUES ('2005-01-04 15:12:36', 'Matrix Reloaded');INSERT INTO table_filmes (datatempo,nome) VALUES ('2005-01-25 05:59:48', 'Titanic');INSERT INTO table_jogos (datatempo,nome) VALUES ('2005-01-21 08:13:00', 'Fifa 2005');INSERT INTO table_jogos (datatempo,nome) VALUES ('2005-02-19 12:04:19', 'Doom 3');
As estruturas, como podem ver, são totalmente iguais, então eu queria que, com uma consulta apenas, retornasse algo como:
1 | 2005-02-27 23:02:05 | O Senhor dos Anéis - O Retorno do Rei | Filme2 | 2005-02-19 12:04:19 | Doom 3 | Jogo3 | 2005-01-25 05:59:48 | Titanic | Filme1 | 2005-01-21 08:13:00 | Fifa 2005 | Jogo2 | 2005-01-04 15:12:36 | Matrix Reloaded | Filme
Como podem perceber está ordenado pela data...Ah! Provavelmente alguns vão falar: "Já que a estrutura é igual, porque simplesmente não cria uma única tabela com um campo indicando se é jogo ou filme", aí eu digo que só usei isso como um exemplo, e poderia ser usado de outras maneiras, que algumas vezes facilitaria bastante. Se alguém tiver uma luz posta aí, é uma curiosidade que tenho, se realmente existe algo que faça o que quero. Agradeço a todos que tentarem me ajudar, valews.Abraços... ^_^ ;)
Hum, legal, não conhecia esse "Union", valew pela ajuda cara... http://forum.imasters.com.br/public/style_emoticons/default/hug.gif
Teoricamente você consegue fazer isso usando o operador UNION.
(SELECT id, datatempo, nome, 'Jogo' FROM table_jogos)UNION(SELECT id, datatempo, nome, 'Filme' FROM table_filmes)ORDER BY datatempo desc
Se precisar, aí vai a página do manual:
http://dev.mysql.com/doc/mysql/en/union.html
Sucesso!