UNIR 4 TABELAS NO SELECT
tenho 4 tabelas:
HORARIO
PACOTES
TEMPORADAS
SALA
preciso unir elas por esses campos
HORARIO.COD_PACOTE = PACOTES.CODIGO
HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO
HORARIO.COD_SALA = SALAS.CODIGO
ou seja, a tabela HORARIO é a que uni as outras 3 tabelas....
Como ficaria essa SQL ?
HORARIO
PACOTES
TEMPORADAS
SALA
preciso unir elas por esses campos
HORARIO.COD_PACOTE = PACOTES.CODIGO
HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO
HORARIO.COD_SALA = SALAS.CODIGO
ou seja, a tabela HORARIO é a que uni as outras 3 tabelas....
Como ficaria essa SQL ?
exemplo de inner join
select a.campo1,a.campo2, b.campo1,b.campo2,c.campo1,d.campo1 from tabelaX a inner join tabelaY b on a.id=b.id inner join tabelaZ on a.id=c.id innner join tabelaM on a.id=m.id where [ô] ....etc..
select a.campo1,a.campo2, b.campo1,b.campo2,c.campo1,d.campo1 from tabelaX a inner join tabelaY b on a.id=b.id inner join tabelaZ on a.id=c.id innner join tabelaM on a.id=m.id where [ô] ....etc..
na sua tese seria mais o ou menos assim:
TÃ DANDO ERRO = [txt-color=#e80000]faltando operador[/txt-color]
from HORARIO inner join PACOTES on HORARIO.COD_PACOTE = PACOTES.CODIGO inner join TEMPORADAS on HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO inner join SALA on HORARIO.COD_SALA = SALAS.CODIGO
TÃ DANDO ERRO = [txt-color=#e80000]faltando operador[/txt-color]
Experimenta separar os inner join com ()
from ((HORARIO inner join PACOTES on HORARIO.COD_PACOTE = PACOTES.CODIGO) inner join TEMPORADAS on HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO) inner join SALA on HORARIO.COD_SALA = SALAS.CODIGO
from ((HORARIO inner join PACOTES on HORARIO.COD_PACOTE = PACOTES.CODIGO) inner join TEMPORADAS on HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO) inner join SALA on HORARIO.COD_SALA = SALAS.CODIGO
Citação::
Experimenta separar os inner join com ()
from ((HORARIO inner join PACOTES on HORARIO.COD_PACOTE = PACOTES.CODIGO) inner join TEMPORADAS on HORARIO.COD_TEMPORADA = TEMPORADAS.CODIGO) inner join SALA on HORARIO.COD_SALA = SALAS.CODIGO
AGORA TÃ DANDO O ERRO:
[txt-color=#e80000]ERRO DE SINTAXE NA OPERAÇÃO JOIN[/txt-color]
eu acho que já tiramos esta duvida uma vez porém de forma diferente então vamos tentar novamente
tente para ver o resultado
SELECT horario.*, pacotes.*, temporadas.*, salas.* FROM horario INNER JOIN (pacotes INNER JOIN (temporadas INNER JOIN salas ON horario.cod_sala = salas.codigo) ON horario.cod_temporada = temporadas.codigo) ON horario.cod_pacote = pacotes.codigo
tente para ver o resultado
Citação::
eu acho que já tiramos esta duvida uma vez porém de forma diferente então vamos tentar novamenteSELECT horario.*, pacotes.*, temporadas.*, salas.* FROM horario INNER JOIN (pacotes INNER JOIN (temporadas INNER JOIN salas ON horario.cod_sala = salas.codigo) ON horario.cod_temporada = temporadas.codigo) ON horario.cod_pacote = pacotes.codigo
tente para ver o resultado
mesma msg de erro:
ERRO DE SINTAXE NA OPERAÇÃO JOIN
tenta fazer o join no where
select ... from horario, pacotes, salas, temporadas
where horario.cod_sala = salas.codigo
and horario.cod_pacote = pacotes.codigo
and horario.cod_temporada = temporadas.codigo
select ... from horario, pacotes, salas, temporadas
where horario.cod_sala = salas.codigo
and horario.cod_pacote = pacotes.codigo
and horario.cod_temporada = temporadas.codigo
Por acaso a base de dados é Access?
Tópico encerrado , respostas não são mais permitidas