MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    Consulta LEFT JOIN para caixa de listagem

    avatar
    nucosta
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 34
    Registrado : 24/07/2012

    Consulta LEFT JOIN para caixa de listagem Empty Consulta LEFT JOIN para caixa de listagem

    Mensagem  nucosta 4/2/2016, 10:30

    Tenho uma tabela (preços) que tem referencia a duas tabelas (artigos e clientes).

    Artigos
    Id
    ...

    Precos
    id
    artigoid
    clienteid
    ...

    Cliente
    Id
    ...

    O form tem um titulo de opção para ver preços (por artigo ou por cliente)
    Depois da selecção do titulo aparece outro campo (subtitulo) para escolha do cliente ou do artigo que cria uma variavel.
    Aparece então uma caixa de listagem com todos os preços para o escolhido.
    Até aqui perfeito tudo funciona.
    Criei um botão para ver tudo, ou seja quero ver todos os clientes ou artigos mesmo que não tenham preço.
    Fiquei então com 4 consultas:
    1- Opção por cliente normal –Select * FROM artigos, precos INNER JOIN id=artigoid AND clienteid = (variavel)
    2- Opção por artigo normal – Select * FROM clientes, precos INNER JOIN id=clienteid AND artigoid = (variavel)
    3- Opção por cliente ver tudo – Select * FROM artigos, precos LEFT JOIN id=artigoid AND clienteid = (variavel)
    4- Opção por artigo ver tudo – Select * FROM clientes, precos LEFT JOIN id=clienteid AND artigoid = (variavel)
    Problema:
    Não funciona.
    A última associação com a variavel não deixa funcionar o LEFT JOIN uma vez que relaciona a tabela preços com a variavel . Colocar (AND clienteid = (variavel) OR clienteid is null) seria outra hipotese mas também não funciona uma vez que só vai buscar, neste caso, os clientes com preço ou que não tenham preço nenhum.
    Outra hipótese é criar uma consulta intermédia no access só dos precos relacionando-a com a selecção mas não consigo criar uma consulta no access (não em VBA) que se relacione a uma variável. É possivel?
    Relcionar com o campo da tabela nãoporque é somente um campo de texto e não do id nem relacionado.
    Alguma sugestão?

      Data/hora atual: 16/5/2024, 20:14