FUNCAO SQL
                    tem como eu pesquisar em um banco de dados usando uma sql string que tenha mais de uma comparação? tipo:
tem jeito?
              Select From os Where status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#;tem jeito?
                    SIM...
é exatamente assim. Vc só não colocou os campos após o SELECT
            é exatamente assim. Vc só não colocou os campos após o SELECT
 
SELECT      a.Nome, b.Endereco
FROM        tbCliente a
INNER JOIN  tbEnderecos b
    ON      a.id_Cliente = b.id_cliente
WHERE       a.Nome LIKE [ô]%JORGE%[ô]
        AND a.Dt_Inclusao BETWEEN #01/01/2008# AND #31/12/2008#
        AND b.UF = [ô]SP[ô]
  
                
                    Sim claro que sim você pode ter N critérios de comparação
                
            
                    certo mas no caso as comparações sao todas na mesma tabela, sem o uso do inner join. tbm funciona?
                
            
                    tente assim
                
             Select * From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô]) and (Datent Between #01/09/2009# and #01/10/2009#);
                    Bom,
Vc pode fazer mais de 1001 coisas com SQL, desde que bem aplicado:
Vc pode criar blocos de comparacoes, delimitando-os com parênteses:
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/01/2009# and #01/12/2009#;
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/09/2009# and #01/10/2009#;
Isso, considerado somente estes campos. Imagine que dá pra vc fazer muito mais, inclusive com consulta união.
                
            Vc pode fazer mais de 1001 coisas com SQL, desde que bem aplicado:
Vc pode criar blocos de comparacoes, delimitando-os com parênteses:
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/01/2009# and #01/12/2009#;
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/09/2009# and #01/10/2009#;
Isso, considerado somente estes campos. Imagine que dá pra vc fazer muito mais, inclusive com consulta união.
                    Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#)  or 
(status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/01/2009# and #01/12/2009#);
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
(status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/09/2009# and #01/10/2009#);
Esqueci dos parênteses do segudo bloco!
            (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/01/2009# and #01/12/2009#);
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
(status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and Datent Between #01/09/2009# and #01/10/2009#);
Esqueci dos parênteses do segudo bloco!
                    vixe galera ta ajudando mto, vlw. so uma duvida, o comando between funciona se o campo venc da tabela for do formato texto ao invez date?
                
            
                    Bom,
Pode até ser que vc consiga se converter o valor do campo para date dentro da sql, mas não é uma boa prática e pode lhe trazer sérios problemas em termos de performance e credibilidade das informações.
Melhor trabalhar com o tipo certo e mais adequado para o campo.
            Pode até ser que vc consiga se converter o valor do campo para date dentro da sql, mas não é uma boa prática e pode lhe trazer sérios problemas em termos de performance e credibilidade das informações.
Melhor trabalhar com o tipo certo e mais adequado para o campo.
                    converter os dados da tabela na consulta? pode? tipo:
Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
(status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and [txt-color=#ff0000]date(Datent)[/txt-color] Between #01/09/2009# and #01/10/2009#);
            Select From os Where (status = [ô]EM ABERTO[ô] And cliente = [ô]CLIENTE1[ô] and Datent Between #01/09/2009# and #01/10/2009#) or
(status = [ô]PENDENTE[ô] And cliente = [ô]CLIENTE2[ô] and [txt-color=#ff0000]date(Datent)[/txt-color] Between #01/09/2009# and #01/10/2009#);
                    Isso. Mas vc terá perda de performance e uma informação com grande perigo de lhe gerar problemas.
                
            
                        Tópico encerrado , respostas não são mais permitidas