Fórum Apenas uma SQL #27531
29/08/2003
0
O negócio é o seguinte, eu estou trabalhando com Delphi e Oracle, as rotinas que fiz foram as seguintes:
/* quantidade de dados faltantes no Mes */
SELECT COUNT(*) FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
AND DATA_DHF >= ´20010101´
AND DATA_DHF <= ´20010131´
AND VAL_FLUV_CONV_DHF = ´7777.77´
/* quantidade de dados faltantes no dia */
SELECT COUNT(*) FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
AND DATA_DHF >= ´20010101´
AND DATA_DHF <= ´20010101´
AND VAL_FLUV_CONV_DHF = ´7777.77´
Se existir na consulta DIA, 24 registros faltantes eu incremento 01
Faço isso para o mês inteiro, o problema é que esta muito lento...
Eu preciso saber quantos registros faltaram no Mês inteiro e preciso saber destes quantos ficaram um DIA inteiro (24 registros) sem dados (7777.77)
Tem como eu fazer isso em apenas uma SQL em vez de eu fazer um FOR no delphi, que é como esta hj????
/* quantidade de dados faltantes no Mes */
SELECT COUNT(*) FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
AND DATA_DHF >= ´20010101´
AND DATA_DHF <= ´20010131´
AND VAL_FLUV_CONV_DHF = ´7777.77´
/* quantidade de dados faltantes no dia */
SELECT COUNT(*) FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
AND DATA_DHF >= ´20010101´
AND DATA_DHF <= ´20010101´
AND VAL_FLUV_CONV_DHF = ´7777.77´
Se existir na consulta DIA, 24 registros faltantes eu incremento 01
Faço isso para o mês inteiro, o problema é que esta muito lento...
Eu preciso saber quantos registros faltaram no Mês inteiro e preciso saber destes quantos ficaram um DIA inteiro (24 registros) sem dados (7777.77)
Tem como eu fazer isso em apenas uma SQL em vez de eu fazer um FOR no delphi, que é como esta hj????
Marcela
Curtir tópico
+ 0
Responder
Posts
29/08/2003
Motta
SELECT
sum(decode(to_char(data_dhf,´yyyymmdd´),´20010101´,1,0)) dia,
sum(decode(to_char(data_dhf,´yyyymmdd´),´200101´,1,0)) mes
FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
aND VAL_FLUV_CONV_DHF = ´7777.77´
sum(decode(to_char(data_dhf,´yyyymmdd´),´20010101´,1,0)) dia,
sum(decode(to_char(data_dhf,´yyyymmdd´),´200101´,1,0)) mes
FROM DADOS_HORARIOS_FLUVIOMETRICOS
WHERE COD_DNAEE_DHF = ´65973501´
aND VAL_FLUV_CONV_DHF = ´7777.77´
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)