[firebase-br] Help com SELECT
WoodP
marcilio.soares em brfree.com.br
Seg Out 18 10:54:39 -03 2004
Outra coisa...
crei dois campos aqui to tipo TIME e fiz SELECT (B-A)/3600 ... sendo que os
valores eram
A=12:00:00 e B=16:00:00 e trouxe de retorno 4,0000 horas certinho.
ahhh !!! eu dividi por 3600 e nao por 60. ai trouxe a hora certinha. Se
fosse A=12:00:00 e B=16:50:00 o valor retornado seria 4,83, ou seja
4 horas e 83% de 1 hora=(.83*60)=Minutos de uma hora.
To usando FB 1.5 e vc? que banco ta usando ai ?
De qualquer forma tenta me mandar as duas tabelas... vo dar uma olhada ou
verifica tb se o Domain do campo realmente e TIME
>
>
>> Outra coisa o formato do campo é:
>>
>> HORA_INI TIME
>> HORA_FIM TIME
>>
>> []'s
>>
>> Edinho
>>
>> Blue Informática <infokernel em yahoo.com.br> wrote:
>> Infelizmente não deu certo ,da esse erro abaixo:
>>
>> Unsuccessful execution caused by a system error that precludes
>> successful execution of subsequent statements.
>> Dynamic SQL Error.
>> expression evaluation not supported.
>>
>>
>> []'s
>>
>> Edinho
>>
>> WoodP wrote:
>> FAZ ASSIM...
>> repara nos pareteses que eu pus.
>> outra coisa... faz um truncate de casa decimal pra evitar erros futuros..
>> eu uso as UDF's da TBUDF, tem no site do cantu, com a funcao
>> UDF_TRUNCDEC(valor,casasdecimais).. MUITO BOA !!
>>
>> SELECT
>> apontamento_trajeto.* ,
>> Funcionario.func_nome,
>> apontamento_trajeto.KM_FIM - apontamento_trajeto.KM_INI as KMTOTAL,
>> (apontamento_trajeto.HORA_FIM - apontamento_trajeto.HORA_INI) / 60 as
>> HORALTOTAL
>> FROM
>> apontamento_trajeto, funcionario
>> WHERE apontamento_trajeto.cd_funcionario = funcionario.cd_funcionario
>>
>> Agora deve rolar direitinho !!!!
>>
>> ----- Original Message -----
>> From: "Blue Informática"
>> To: "FireBase"
>>
>> Sent: Sunday, October 17, 2004 10:19 PM
>> Subject: Re: [firebase-br] Help com SELECT
>>
>>
>>> Estou tentando fazer isso no select mais não funciona
>>>
>>> SELECT
>>> apontamento_trajeto.* ,
>>> Funcionario.func_nome,
>>> apontamento_trajeto.KM_FIM - apontamento_trajeto.KM_INI as KMTOTAL,
>>> apontamento_trajeto.HORA_FIM - apontamento_trajeto.HORA_INI / 60 as
>>> HORALTOTAL
>>> FROM
>>> apontamento_trajeto, funcionario
>>> WHERE apontamento_trajeto.cd_funcionario = funcionario.cd_funcionario
>>>
>>>
>>> da esse erro abaixo:
>>> This operation is not defined for system tables.
>>> Dynamic SQL Error.
>>> SQL error code = -607.
>>> Array/BLOB/DATE data types not allowed in arithmetic.
>>>
>>>
>>>
>>> WoodP wrote:
>>> divida o resultado por 60 sempre :)
>>> pois o resultado e em segundos ...sempre :)
>>>
>>> ----- Original Message -----
>>> From: "Blue Informática"
>>> To: "FireBase"
>>>
>>> Sent: Sunday, October 17, 2004 11:52 AM
>>> Subject: Re: [firebase-br] Help com SELECT
>>>
>>>
>>>> Ok,Ok!
>>>> Consegui ,fazer funcionar. So que o Meu Problema agora é outro no mesmo
>>>> sentido .
>>>> Preciso formatar a Hora ,porque no select que pega hora ele me joga em
>>>> número e não em hora .como fazer para me mostrar em hora e não em
>>>> numero.
>>>> Exemplo:
>>>> Tenho na base:
>>>>
>>>> HORA_INI , HORA_FIM
>>>> 10:00 11:00 O resultado seria 1 hora só que ele me trás
>>>> em número: 3600 .
>>>> Como formatar esso número.
>>>>
>>>>
>>>> []'s Edinho
>>>>
>>>>
>>>> Marcilio Soares wrote:
>>>> Se eu entendi vc ta querendo o calculo de hora no proprio select. sendo
>>>> assim acrescenta
>>>> KM_FIM - KM_INI KMTOTAL,
>>>> HORA_FIM - HORA_INI HORALTOTAL
>>>> no select e nao no where.
>>>> e isso. ?
>>>> se nao for reescreve a query mas so usando os campos e tabelas
>>>> pertinentes
>>>> a
>>>> sua duvida!
>>>>
>>>> ----- Original Message -----
>>>> From: "Blue Informática"
>>>> To: "FireBase"
>>>>
>>>> Sent: Friday, October 15, 2004 1:43 PM
>>>> Subject: Re: [firebase-br] Help com SELECT
>>>>
>>>>
>>>>> Na clausula where eu igualei as chaves i tentei usar uma Subquery mais
>>>>> não
>>>> funciona!!
>>>>>
>>>>> []'s Edinho
>>>>>
>>>>> Marcilio Soares wrote:
>>>>> tem um negocio esquisito na clausual where.
>>>>> O calculo e criterio da query ?
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>> From: "Blue Informática"
>>>>> To: "Lista Firebird"
>>>>> ; ;
>>>>> ; ;
>>>>>
>>>>> Sent: Friday, October 15, 2004 11:04 AM
>>>>> Subject: [firebase-br] Help com SELECT
>>>>>
>>>>>
>>>>> > Pessoal !
>>>>> >
>>>>> > Preciso fazer esse select abaixo e não estou conseguindo estou
>>>>> > utlizando
>>>>> Firebird 1.5 .
>>>>> >
>>>>> > Preciso pegar todos campos da tabela APONTAMENTO_TRAJETO e calcular
>>>>> > no
>>>>> select a Kilometragem final - kilometragem inicial DIFERENCA e pegar
>>>>> Hora Final - hora inicial DIFERENÇA
>>>>> > Tente utilizar uma SubQuery mais não funciona,alguem poderia
>>>>> > verificar
>>>>> > o
>>>>> que esta acontecendo.
>>>>> >
>>>>> >
>>>>> >
>>>>> > []'s
>>>>> >
>>>>> > Edinho
>>>>> > SELECT
>>>>> > apontamento_trajeto.CD_BOLETIM ,
>>>>> > apontamento_trajeto.CD_FUNCIONARIO
>>>>> > ,apontamento_trajeto.CD_AVALIADOR ,
>>>>> apontamento_trajeto.CD_EQUIPTO,
>>>>> > apontamento_trajeto.CD_OPERACAO, apontamento_trajeto.DATA_APTO ,
>>>>> apontamento_trajeto.LOCAL_TRAJETO ,
>>>>> > apontamento_trajeto.HORA_INI ,
>>>>> > apontamento_trajeto.HORA_FIM , apontamento_trajeto.N_MARCHAS
>>>>> > ,apontamento_trajeto.ABAST_1 ,
>>>>> > apontamento_trajeto.ABAST_2 ,
>>>>> > apontamento_trajeto.N_FREIOS ,
>>>>> > apontamento_trajeto.KM_INI ,
>>>>> > apontamento_trajeto.KM_FIM , apontamento_trajeto.USO_F_CAM_CRTA
>>>>> > ,apontamento_trajeto.RPM , apontamento_trajeto.MARCHA_ADEQUADA ,
>>>>> > ,apontamento_trajeto.USO_CINTO,
>>>>> > apontamento_trajeto.OBS,apontamento_trajeto.DATA_FIM,
>>>>> > Funcionario.func_nome
>>>>> > FROM
>>>>> > apontamento_trajeto,modelo_equipamento,
>>>>> > funcionario,equipamentos
>>>>> > where apontamento_trajeto.cd_funcionario =
>>>>> > funcionario.cd_funcionario
>>>>> and
>>>>> > equipamentos.cd_modelo = modelo_equipamento.cd_modelo AND select
>>>>> (SELECT KM_FIM - KM_INI KMTOTAL AND HORA_FIM - HORA_INI HORALTOTAL
>>>>> FROM
>>>>> apontamento_trajeto);
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> > ---------------------------------
>>>>> > Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>>>> agora!
>>>>> > ______________________________________________
>>>>> > FireBase-BR (www.firebase.com.br)
>>>>> > Para editar sua configuração na lista, use o endereço
>>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>> >
>>>>> >
>>>>>
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br)
>>>>> Para editar sua configuração na lista, use o endereço
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>>
>>>>>
>>>>> ---------------------------------
>>>>> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>>>>> agora!
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br)
>>>>> Para editar sua configuração na lista, use o endereço
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br)
>>>> Para editar sua configuração na lista, use o endereço
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>
>>>>
>>>>
>>>> ---------------------------------
>>>> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>>>> agora!
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br)
>>>> Para editar sua configuração na lista, use o endereço
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>
>>>>
>>>
>>>
>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br)
>>> Para editar sua configuração na lista, use o endereço
>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>
>>>
>>> ---------------------------------
>>> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>>> agora!
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br)
>>> Para editar sua configuração na lista, use o endereço
>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>
>>
>>
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br)
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>
>>
>> ---------------------------------
>> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>> agora!
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br)
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>
>>
>> ---------------------------------
>> Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador
>> agora!
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br)
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>
>>
>
Mais detalhes sobre a lista de discussão lista