Pytanie : SQL

I polubić the wartość rząd który obecnie mieć (0) z the średnia 145 i 165 lub the rząd nad i pod jakaś pole który mieć jakaś wartość.  I chcieć dzień wartość z the aveage the pole nad i pod the dzień field.
Currently I móc tylko KURSOR i w górę i na dół the stołowy spełnianie the matematyka
Field2 = (field1 + field3) * .5 The .5 wartość móc rozprzestrzeniać przez cały the column.
The stół tylko mieć 24 rejestr gdy ono być the suma opierać się na godzina dzień.
Volume
145
0
165

Odpowiedź : SQL

To musieć

aktualizacja tbl
ustawiać pojemność = (wybrany avg (b.volume) od tbl B dokąd b.hr=tbl.hr-1 lub b.hr=tbl.hr+1)
dokąd pojemność = (0)

Potrzeba być zbyt symplicystyczny, ale ono móc twój potrzeba. Ono być symplicystyczny ponieważ:

Jeżeli twój pierwszy godzina mieć (0), ono kopiować the wartość bezpośrednio od the następny godzina ponieważ tam  być żadny dane przeor.
Jeżeli ty mieć dwa lub więcej konsekutywny zero, ty kończyć konsekutywny z niektóre niski cenić dane.  Widzieć ten przykład przed lub po.

Hr/Przed Lub Po
(0)/10/10
(1)/(0)/5
2/(0)/(0)
3/(0)/15
4/30/30
5/10/10
6/(0)/15
7/20/20
Inne rozwiązania  
 
programming4us programming4us