Fórum Função OUTER no Join SQL. #39555
18/10/2003
0
Olá, Pessoal.
Estou com uma duvida.
Alguem já ouviu falar da função OUTER em um JOIN no SQL ?
Estou querendo saber como faço para usar essa função no FIREBIRD/INTERBASE. Será que é possível ?
Exemplo.:
SELECT * FROM ITEM , [b][i]OUTER[/i][/b] GRUPO_PRODUTO
WHERE ITEM.COD_GRUPO = GRUPO_PRODUTO.COD_GRUPO
Se caso não existir o grupo de produto cadastrado para algum item, ele traz o registro do item mesmo assim. Alguém já fez isso no FIREBIRD ?
Se puderes me ajudar, agradeço desde já.
Fiquem com Deus e que Jesus ilumine seus passos sempre por onde andares.
Ovidio Jr.
Estou com uma duvida.
Alguem já ouviu falar da função OUTER em um JOIN no SQL ?
Estou querendo saber como faço para usar essa função no FIREBIRD/INTERBASE. Será que é possível ?
Exemplo.:
SELECT * FROM ITEM , [b][i]OUTER[/i][/b] GRUPO_PRODUTO
WHERE ITEM.COD_GRUPO = GRUPO_PRODUTO.COD_GRUPO
Se caso não existir o grupo de produto cadastrado para algum item, ele traz o registro do item mesmo assim. Alguém já fez isso no FIREBIRD ?
Se puderes me ajudar, agradeço desde já.
Fiquem com Deus e que Jesus ilumine seus passos sempre por onde andares.
Ovidio Jr.
Ovidio
Curtir tópico
+ 0
Responder
Posts
18/10/2003
Afarias
|Alguem já ouviu falar da função OUTER em um JOIN no SQL ?
|Estou querendo saber como faço para usar essa função no
|FIREBIRD/INTERBASE. Será que é possível ?
Sim, só usar a sintaxe SQL padrão ANSI-92
os OUTER joins podem ser LEFT, RIGHT ou FULL -- em geral, se omite o parâmentro OUTER e e usa-se apenas os parâmetros LEFT, RIGHT ou FULL -- dê uma lida no help de SQL do Interbase ou Firebird no comando SELECT.
|SELECT * FROM ITEM , OUTER GRUPO_PRODUTO
|WHERE ITEM.COD_GRUPO = GRUPO_PRODUTO.COD_GRUPO
este SQL ficaria na forma::
select * from item left outer join grupo_produto on (item.cod_grupo = grupo_produto.cod_grupo)
where {...suas condições...}
mas o OUTER pode ser omitido::
select * from item left join grupo_produto on {...}
e, em lugar do LEFT pode ser usado RIGHT ou FULL de acordo com o resultado esperado.
|Se caso não existir o grupo de produto cadastrado para algum item, ele
|traz o registro do item mesmo assim. Alguém já fez isso no FIREBIRD ?
Claro, então é o LEFT q vc tem q usar.
T+
|Estou querendo saber como faço para usar essa função no
|FIREBIRD/INTERBASE. Será que é possível ?
Sim, só usar a sintaxe SQL padrão ANSI-92
os OUTER joins podem ser LEFT, RIGHT ou FULL -- em geral, se omite o parâmentro OUTER e e usa-se apenas os parâmetros LEFT, RIGHT ou FULL -- dê uma lida no help de SQL do Interbase ou Firebird no comando SELECT.
|SELECT * FROM ITEM , OUTER GRUPO_PRODUTO
|WHERE ITEM.COD_GRUPO = GRUPO_PRODUTO.COD_GRUPO
este SQL ficaria na forma::
select * from item left outer join grupo_produto on (item.cod_grupo = grupo_produto.cod_grupo)
where {...suas condições...}
mas o OUTER pode ser omitido::
select * from item left join grupo_produto on {...}
e, em lugar do LEFT pode ser usado RIGHT ou FULL de acordo com o resultado esperado.
|Se caso não existir o grupo de produto cadastrado para algum item, ele
|traz o registro do item mesmo assim. Alguém já fez isso no FIREBIRD ?
Claro, então é o LEFT q vc tem q usar.
T+
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)