Erro Sql!

3 respostas
G

Alguém poderia me ajudar me ajudando com a solução deste sql simples mas que eu não estou conseguindo:

SELECT p.idt, p.numero, endereco,nm_rz_social, c.cpf_cnpj, dt_pedido, hr_pedido FROM pedidos p, clientes c 
WHERE p.cpf_cnpj  = c.cpf_cnpj 

AND BETWEEN ((p.dt_pedido = '"+datainicial+"')
AND (p.dt_pedido = '"+datafinal+"')
OR   (p.numero= '"+vr_numero+"')))

A partir do AND BETWEEN não funciona ou seja na clausula between.
Eu quero pegar o período de pedidos entre a data inicial e a data final...
Mas não consigo...

3 Respostas

J
"JavaPlayer":
Alguém poderia me ajudar me ajudando com a solução deste sql simples mas que eu não estou conseguindo:
SELECT p.idt, p.numero, endereco,nm_rz_social, c.cpf_cnpj, dt_pedido, hr_pedido FROM pedidos p, clientes c 
WHERE p.cpf_cnpj  = c.cpf_cnpj 

AND BETWEEN ((p.dt_pedido = '"+datainicial+"')
AND (p.dt_pedido = '"+datafinal+"')
OR   (p.numero= '"+vr_numero+"')))

A partir do AND BETWEEN não funciona ou seja na clausula between.
Eu quero pegar o período de pedidos entre a data inicial e a data final...
Mas não consigo...

Experimente a seguinte query com mudanças dos parenteses

SELECT p.idt, p.numero, endereco,nm_rz_social, c.cpf_cnpj, dt_pedido, hr_pedido FROM pedidos p, clientes c 
WHERE p.cpf_cnpj  = c.cpf_cnpj 

AND BETWEEN p.dt_pedido = '"+datainicial+"' AND p.dt_pedido = '"+datafinal+"' 
AND p.numero= '"+vr_numero+"'"

Com este código where você conseguirá pegar todos os pedidos de um determinado codigo cujas data do pedido estejam no intervalo desejado.

Abraços.

:P

S

Pelo menos nos sgbds que conheço, a sintaxe do operador BETWEEN é:

expressão BETWEEN minimo AND MÁXIMO

Sua construção deveria se parecer com isto:

… "AND dt_pedido BETWEEN " + datainicial + " AND " + datafinal + " … "

J

É isso aí mesmo que vc falou, foi uma falha.

:frowning:

Criado 13 de maio de 2004
Ultima resposta 14 de mai. de 2004
Respostas 3
Participantes 3