[firebase-br] Existe Limite de linhas em uma consulta (SQL) ???
Dominio Informatica
dominioinf em brturbo.com.br
Dom Out 23 23:24:48 -03 2005
Não sei se vai ser de grande ajuda, mas eu faço assim:
Crio na Tabela um Campo Ano Integer
Antes de gravar a informação na tabela...
Crio uma variarvel...
var Ano,Mes,Dia: TWord;
// decodifico a Data em numeros inteiros
DecodeDate(Date,Ano,Mes,Dia);
antes de gravar seto na tabela a variavel Ano.
Ex.
Tabela.ParamByName('Ano').AsInteger:= Ano;
Depois é só pesquizar pelo Ano correspondente.
Espero ter ajudado
Até mais...
Rodrigo
----- Original Message -----
From: "Carlos Eduardo" <carerica01 em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Sunday, October 23, 2005 6:25 PM
Subject: Re: [firebase-br] Existe Limite de linhas em uma consulta (SQL) ???
> Pessoal Desculpe a ignorância, mas, preciso perguntar.
> Como posso selecionar por ano. Exemplo o usuario seleciona na aplicação o
> ano e eu consulto com IBquery a view que esta criada conforme abaixo :
>
> Ex : IBquery1 = select * from vismensal where ano = (:ano)
> *********************************************
>
> CREATE VIEW VISMENSAL(
> CONHECEU,
> SETEMBRO,
> OUTUBRO,
> TOTAL)
> AS
> Select
> Cast('LETREIRO' as VarChar(30)) as Conheceu,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where Extract(Month From CM.Data) = 9
> and CL.Conheceu = 'LETREIRO'
> and Extract(Month From CL.dtcad) = 9) as
> Setembro ,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where Extract(Month From CM.Data) = 10
> and CL.Conheceu = 'LETREIRO'
> and Extract(Month From CL.dtcad) = 10) as
> Outubro,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where (Extract(Month From CM.Data) = Extract(Month From Cl.Dtcad))
> and CL.Conheceu = 'LETREIRO') as
> Total
>>From rdb$DATABASE
>
> UNION
>
> Select
> Cast('PLACA PORTA' as VarChar(30)) as Conheceu,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where Extract(Month From CM.Data) = 9
> and CL.Conheceu = 'PLACA PORTA'
> and Extract(Month From CL.dtcad) = 9) as
> Setembro ,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where Extract(Month From CM.Data) = 10
> and CL.Conheceu = 'PLACA PORTA'
> and Extract(Month From CL.dtcad) = 10) as
> Outubro,
> (Select count(Distinct(CM.codcli)) From Comanda CM
> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
> Where (Extract(Month From CM.Data) = Extract(Month From Cl.Dtcad))
> and CL.Conheceu = 'PLACA PORTA') as
> Total
>>From rdb$DATABASE
> ;
>
>
> Tentei , porem ainda sem sucesso.
>
>
> Cadú
>
>
>
>
>
> ----- Original Message -----
> From: "valdir.marcos" <valdir.marcos em ig.com.br>
> To: <lista em firebase.com.br>
> Sent: Sunday, October 23, 2005 4:23 AM
> Subject: Re: [firebase-br] Existe Limite de linhas em uma consulta (SQL)
> ???
>
>
>> Na relidade, a quantidade de caracteres no seu select é maior que o
>> permitido.
>> Então, divida o seu select em pedaços:
>> Por exemplo:
>> - para cada select abaixo crie uma view
>> - depois, faça um UNION para cada view.
>>
>> Um abraço,
>>
>> Valdir Marcos
>>
>>
>>
>> Em (04:01:15), FireBase escreveu:
>>
>>
>>>Opa Valdir Marcos, é a mesma que recebi sua ajuda .
>>>Aconteceu que precisei ajustar os parametros e tudo ficou perfeito ,
>>>porem
>>>minha lista de como nos conheceu tem 40 itens e preciso condicionar
>>>tambem
>>>por 12 meses, o que torna o sql maior ainda, entretanto quando cheguei +-
>> no
>>>décimo segundo item (UNION) o dbexpress retornou esta mensagem de erro,
>>>tentei no delphi e encontrei a mesma mensagem. segue abaixo parte da
>>>consulta :
>>>
>>>Select
>>> Cast('BOLSA' as VarChar(30)) as Conheceu,
>>> (Select Count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 8
>>> and CL.Conheceu = 'BOLSA'
>>> and Extract(Month From CL.dtcad) = 8) as
>>>Agosto ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 9
>>> and CL.Conheceu = 'BOLSA'
>>> and Extract(Month From CL.dtcad) = 9) as
>>>Setembro ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 10
>>> and CL.Conheceu = 'BOLSA'
>>> and Extract(Month From CL.dtcad) = 10) as
>>>Outubro,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 11
>>> and CL.Conheceu = 'BOLSA'
>>> and Extract(Month From CL.dtcad) = 11) as
>>>Novembro,
>>>
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where (Extract(Month From CM.Data) = Extract(Month From Cl.Dtcad))
>>> and CL.Conheceu = 'BOLSA') as
>>>Total
>>>>From rdb$DATABASE
>>>
>>>union
>>>Select
>>> Cast('INTERNET' as VarChar(30)) as Conheceu,
>>> (Select Count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 8
>>> and CL.Conheceu = 'INTERNET'
>>> and Extract(Month From CL.dtcad) = 8) as
>>>Agosto ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 9
>>> and CL.Conheceu = 'INTERNET'
>>> and Extract(Month From CL.dtcad) = 9) as
>>>Setembro ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 10
>>> and CL.Conheceu = 'INTERNET'
>>> and Extract(Month From CL.dtcad) = 10) as
>>>Outubro,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 11
>>> and CL.Conheceu = 'INTERNET'
>>> and Extract(Month From CL.dtcad) = 11) as
>>>Novembro,
>>>
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where (Extract(Month From CM.Data) = Extract(Month From Cl.Dtcad))
>>> and CL.Conheceu = 'INTERNET') as
>>>Total
>>>>From rdb$DATABASE
>>>
>>>union
>>>
>>>Select
>>> Cast('LETREIRO' as VarChar(30)) as Conheceu,
>>> (Select Count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 8
>>> and CL.Conheceu = 'LETREIRO'
>>> and Extract(Month From CL.dtcad) = 8) as
>>>Agosto ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 9
>>> and CL.Conheceu = 'LETREIRO'
>>> and Extract(Month From CL.dtcad) = 9) as
>>>Setembro ,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 10
>>> and CL.Conheceu = 'LETREIRO'
>>> and Extract(Month From CL.dtcad) = 10) as
>>>Outubro,
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where Extract(Month From CM.Data) = 11
>>> and CL.Conheceu = 'LETREIROS'
>>> and Extract(Month From CL.dtcad) = 11) as
>>>Novembro,
>>>
>>> (Select count(Distinct(CM.codcli)) From Comanda CM
>>> Left Outer Join Clientes CL on CM.CodCli = CL.CodCli
>>> Where (Extract(Month From CM.Data) = Extract(Month From Cl.Dtcad))
>>> and CL.Conheceu = 'LETREIRO') as
>>>Total
>>>>From rdb$DATABASE
>>>
>>>.
>>>.
>>>.
>>>.
>>>etc ...
>>>
>>>Cadú
>>>
>>>----- Original Message -----
>>>From: "valdir.marcos"
>>>To:
>>>Sent: Sunday, October 23, 2005 3:31 AM
>>>Subject: Re: [firebase-br] Existe Limite de linhas em uma consulta (SQL)
>> ???
>>>
>>>> Qual a consulta?
>>>>
>>>> Um abraço,
>>>>
>>>> Valdir Marcos
>>>>
>>>>
>>>>
>>>> Em (03:00:39), FireBase escreveu:
>>>>
>>>>
>>>>>Boa Noite Pessoal
>>>>>
>>>>>Estou criando uma consulta que esta retornando a seguinte mensagem de
>>>>>erro.
>>>>>
>>>>>Invalid token.
>>>>>invalid request BLR at offset 661.
>>>>>context already in use (BLR error).
>>>>>
>>>>>Alguem ja viu ?
>>>>>
>>>>>Abraços ,
>>>>>
>>>>>Cadú
>>>>>______________________________________________
>>>>>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>>>>Para editar sua configuração na lista, use o endereço
>>>>>http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>>Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>
>>>>>----------
>>>>
>>>
>>>--------------------------------------------------------------------------------
>>>
>>>______________________________________________
>>>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>>Para editar sua configuração na lista, use o endereço
>>>http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>_______________________________________________________
>>>Promoção Yahoo! Acesso Grátis: a cada hora navegada você acumula cupons e
>>>concorre a mais de 500 prêmios! Participe! http://yahoo.fbiz.com.br/
>>>
>>>______________________________________________
>>>FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>>>Para editar sua configuração na lista, use o endereço
>>>http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>
>>>----------
>>
>
>
> --------------------------------------------------------------------------------
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
>
> _______________________________________________________ Promoção Yahoo!
> Acesso Grátis: a cada hora navegada você acumula cupons e concorre a mais
> de 500 prêmios! Participe! http://yahoo.fbiz.com.br/
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista