Olá pessoal!
Tenho a seguinte SQL num site em ASP e banco ACCESS:
SELECT *
FROM (cadastro INNER JOIN bairros ON bairros.Codigo = cadastro.id_bairro) INNER JOIN cep ON cep.cep = cadastro.cep
WHERE id_cadastro = MMColParam
Esta consulta está funcionanado perfeitamente, no entanto, agora tenho alguns cadastros que não estão com dados relacionados nas tabelas "bairros" e "cep", precisaria mostrar todos os cadastros, mesmo os que não tem campos relacionados... Sei que se deve usar LEFT JOIN ou RIGHT JOIN, mas como? Não consegui nas minhas tentativas. Por favor, espero alguma ajuda... Obrigado!
MVZ
Publicidade
|
|
Page 1 of 1
[Resolvido] INNER JOIN e/ou LEFT JOIN Consultar BD ACCESS em site ASP usando critérios de LEFT JOIN
#2
Posted 22 February 2010 - 10:13 PM
você pode usar um UNION , mas lembre-se ter uma relacionamento entre as tabelas, na verdade, a impôrtancia de uma modelagem de dados bem definida até os mínimos detalhes, como os campos de relacionamentos, um velho ditado diz, que um relacionamento bem definido é a alma do aplicativo, pois daí saem todas as consultas e operações com o banco, influenciando diretamente na otimização e performance do aplicativo
#3
Posted 22 February 2010 - 11:29 PM
Resolvido!
Na primeira vez que tentei o óbvio... que foi simplesmente trocar INNER por LEFT, não havia dado certo, por isso postei aqui a pergunta, no entanto, tentei novamente sem copiar e colar, mas digitando mesmo a instrução de consulta e deu certo na hora... unindo as três tabelas e mostrando todos os resultados, mesmo das tabelas sem nenhum campo relacionado, coisa que o INNER JOIN não faz... Como dá pra ver aí abaixo, a tabela principal é "cadastro" e tenho mais duas consultas nas tabelas "bairros" e "cep" que nem sempre terão dados para "puxar". Tenho certeza que vai ajudar muita gente, segue o correto:
SELECT *
FROM (cadastro LEFT JOIN bairros ON cadastro.id_bairro = bairros.Codigo) LEFT JOIN cep ON cadastro.cep = cep.cep
Na primeira vez que tentei o óbvio... que foi simplesmente trocar INNER por LEFT, não havia dado certo, por isso postei aqui a pergunta, no entanto, tentei novamente sem copiar e colar, mas digitando mesmo a instrução de consulta e deu certo na hora... unindo as três tabelas e mostrando todos os resultados, mesmo das tabelas sem nenhum campo relacionado, coisa que o INNER JOIN não faz... Como dá pra ver aí abaixo, a tabela principal é "cadastro" e tenho mais duas consultas nas tabelas "bairros" e "cep" que nem sempre terão dados para "puxar". Tenho certeza que vai ajudar muita gente, segue o correto:
SELECT *
FROM (cadastro LEFT JOIN bairros ON cadastro.id_bairro = bairros.Codigo) LEFT JOIN cep ON cadastro.cep = cep.cep
Share this topic:
Page 1 of 1
Similar Topics
| Topic | Forum | Started By | Stats | Last Post Info | |
|---|---|---|---|---|---|
|
Site promete strip de Mamãe Noel e instala vírus no PC
|
Notícias |
Notícias
|
|
|
|
Procurador move ação contra Anvisa e site de suplementos
|
Notícias |
Notícias
|
|
|
|
Facebook: 175 milhões de pessoas acessam site todos os dias
|
Notícias |
Notícias
|
|
|
|
Novo site HUFERSIL.WEBDESIGN
avaliem por favor |
Avaliação |
hufersil
|
|
|
|
Resoluções [RESOLVIDO]
qual a melhor pratica? |
Flash & ActionScript |
wweb
|
|
|
|
Gravadoras negam acordo para site de músicas gratuitas
|
Notícias |
Notícias
|
|
|
|
Site fatiado
Redimensionar células |
Dreamweaver |
zaratine
|
|
|
|
eh possivel isso?
é possivel criar esta imagem usando o FW |
Fireworks |
diegofvg
|
|
Publicidade
|
|

Help













