AJUDA COM QUERY (URGENTE)

PERCIFILHO 10/09/2015 13:21:24
#451229
Olá, pessoal, depois de algum tempo sumido, aqui estou de novo.
Esta dúvida é para os feras no VB (e eu sei que tem muitos por aqui.....)
Vai lá:

Tenho essas duas tabelas Access com esses campos e registros:

Tabela Clientes
Código Nome
1 Rubens
2 Matheus
3 Carlos

Tabela Títulos
Código CodCli DataEmissao Numero Valor Data Pagto
1 1 01/09/2015 12 50,00 01/09/2015
2 1 01/09/2015 13 60,00
3 1 02/09/2015 14 45,00 01/09/2015
4 2 02/09/2015 15 30,00
5 2 02/09/2015 16 25,00
6 3 03/09/2015 17 28,00
7 3 03/09/2015 18 35,00 04/09/2015
8 2 03/09/2015 19 36,00
9 1 04/09/2015 20 48,00
10 1 04/09/2015 21 52,00
11 2 04/09/2015 22 60,00
12 3 05/09/2015 23 70,00 05/09/2015
13 2 05/09/2015 24 81,00
14 3 05/09/2015 25 47,00 05/09/2015
15 1 05/09/2015 26 32,00


Preciso montar uma query que me traga os seguintes resultados:

Quero um relatório analítico dos clientes, ou seja, todas as movimentações
que o cliente realizou no período especificado. O relatório tem que ser por ordem
de nome de cliente, e por ordem de data, sendo que quando a emissão estiver
dentro do período, é considerado Entrada, e quando o pagamento estiver dentro do período,
é considerado Baixa. Assim, quando houver registros na mesma data, preciso que me mostre
primeiramente as Entradas, e depois as Baixas.

Por exemplo:
Vou selecionar um período: 01/09/2015 a 05/09/2015.

Analisando as tabelas acima, o resultado teria que ser esse:

Relatório Analítico
CodCli Cliente Data Oper. Numero Valor Tipo Op.
3 CARLOS 03/09/2015 17 28,00 ENTRADA
03/09/2015 18 35,00 ENTRADA
04/09/2015 18 35,00 BAIXA
05/09/2015 23 70,00 ENTRADA
05/09/2015 25 47,00 ENTRADA
05/09/2015 23 70,00 BAIXA
05/09/2015 25 47,00 BAIXA

1 MATHEUS 01/09/2015 12 50,00 ENTRADA
01/09/2015 13 60,00 ENTRADA
01/09/2015 12 50,00 BAIXA
02/09/2015 14 45,00 ENTRADA
04/09/2015 20 48,00 ENTRADA
04/09/2015 21 52,00 ENTRADA
05/09/2015 26 32,00 ENTRADA
05/09/2015 14 45,00 BAIXA

2 RUBENS 02/09/2015 15 30,00 ENTRADA
02/09/2015 16 25,00 ENTRADA
03/09/2015 19 36,00 ENTRADA
04/09/2015 22 60,00 ENTRADA
04/09/2015 19 36,00 BAIXA
05/09/2015 24 81,00 ENTRADA

Será que eu consigo fazer tudo isso numa só query, ou alguém me dá uma luz
para saber como eu consigo fazer isso?

Até mais.
CLEVERTON 10/09/2015 13:44:40
#451234
Segue um exemplo

SELECT A.Nome, B.Data FROM Clientes A, Vendas B WHERE A.Codigo=B.CodCliente AND ......
ACCIOLLY 10/09/2015 14:29:05
#451238
Se você não tem muita experiencia com SQL, porque não cria uma consulta já que está trabalhando com access? daí é só pedir pra mostrar a SQL da sua consulta e ao final dela colocar WHERE (o que mais desejar) e pronto! tá montada a sua SQL de pesquisa. Dessa forma fica mais fácil pra você entender os INNER JOIN[ô]s da vida!

Té mais
PERCIFILHO 11/09/2015 15:49:45
#451300
Como nenhuma das respostas conseguiu resolver meu problema, estou encerrando o tópico.
Consegui fazer de uma outra maneira.
Obrigado a todos pela iniciativa de ajudar.
PLUGSOFTSM 11/09/2015 17:07:59
#451307
Resposta escolhida
Eu faria uma consulta da seguinte maneira

Select C.CodCli, C.Nome, T.DataEmissao as [Data Oper], T.Numero, T.Valor, [ô]Entrada[ô] as [Tipo Op] from (Clientes C Left Join Titulos t on c.CodCli = T.CodCli) where T.dataEmisso Between #data1# and #data2# UNION Select C.CodCli, C.Nome, T.[Data Pagto]as [Data Oper], T.Numero, T.Valor, [ô]Baixa[ô] as [Tipo Op] from (Clientes C Left Join Titulos t on c.CodCli = T.CodCli) where T.[Data pagto] Between #data1# and #data2# order by [Data Oper]


onde Data1 e data2 devem ser o intervalo de datas a serem consultadas e dependendo do access devem ser infomadas no formato ([Ô]mm/dd/yyyy[Ô])
PERCIFILHO 15/09/2015 07:55:02
#451403
Caro colega PLUGSOFTSM.
Essa query que você montou, serviu como uma luva pra mim.
Só fiz algumas alterações para adaptar corretamente ao que eu precisava, mas funcionou direitinho.
Não tenho muita [Ô]intimidade[Ô] com querys, mas também não sabia que dava pra fazer como você fez: [ô]Entrada[ô] as [Tipo Op].
À propósito, onde eu encontraria material bom para aprender mais sobre sql, todos esses Left Join, Union, etc....?
Muito obrigado.
Até mais.
Tópico encerrado , respostas não são mais permitidas