Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevok: 1 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 07.03.08
Prihlásený: 17.08.11
Príspevky: 7
Témy: 3
Príspevok NapísalOffline : 04.10.2010 8:42

Zdravim.
som zaciatocnik v SQL a potreboval by som pomoct s nasledovnym problemom: mam proceduru, ktora vyhodnocuje rozdiel nekonecneho pocitadla medzi dvoma zadanymi casovymi intervalmi:

Kód:
USE [Runtime]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[MNEORCH]

 @Rok int, @Mesiac int, @Den int, @Hodina int, @Minuta int, @Sekunda int, @Rok2 int, @Mesiac2 int, @Den2 int, @Hodina2 int, @Minuta2 int, @Sekunda2 int
 -- Pociatocny a konecny datum sledovaneho obdobia
 as

declare @Zaciatok as datetime , @Koniec as datetime -- zaciatok a koniec sledovaneho intervalu

declare @obdobie varchar(99)
set @obdobie=cast(@Rok as varchar(5))+'-'+cast(@Mesiac as varchar(5))+'-'+cast(@Den as varchar(5))+' '+cast(@Hodina as varchar(5))+':'+cast(@Minuta as varchar(5))+':'+cast(@Sekunda as varchar(5))
set @Zaciatok=convert(datetime,@obdobie,120)

set @obdobie=cast(@Rok2 as varchar(5))+'-'+cast(@Mesiac2 as varchar(5))+'-'+cast(@Den2 as varchar(5))+' '+cast(@Hodina2 as varchar(5))+':'+cast(@Minuta2 as varchar(5))+':'+cast(@Sekunda2 as varchar(5))
set @Koniec=convert(datetime,@obdobie,120)

declare @Tab table(Polozka varchar(50),Hodnota bigint)
declare @Tab2 table(Polozka varchar(50),Hodnota bigint)
declare @Tab3 table(Cas varchar(50),Hodnota datetime)

insert into @Tab
select 'TAGx' ,
((select Value from AnalogHistory where Tagname='TAGx'+'_TOT.MLD_Sec' and Datetime=@Koniec) *1000000000
+(select Value from AnalogHistory where Tagname='TAGx'+'_TOT.Sec' and Datetime=@Koniec)) -
((select Value from AnalogHistory where Tagname='TAGx'+'_TOT.MLD_Sec' and Datetime=@Zaciatok) *1000000000+
(select Value from AnalogHistory where Tagname='TAGx'+'_TOT.Sec' and Datetime=@Zaciatok))

insert into @Tab3
select 'Pociatocny' ,(select @Zaciatok)
insert into @Tab3
select 'Konecny' ,(select @Koniec)

-- vsetky NULL hodnoty nahradim -1
insert into @Tab2
select Polozka,
case
when Hodnota is null then -1
else Hodnota
end
from @Tab

-- vysledny SELECT klientovi
select * from @Tab2
select * from @Tab3


problem vsak nastane, ak bolo toto pocitadlo znulovane niekde v sledovanom casovom obdobi, kedy sa moze stat napr. ze hodnota v konecnom case < hodnata v zaciatocnom case... potreboval by som to nejak osetrit, aby si procedura sama zistila, ci ma pocitadlo v zadanom obdobi stale rastucu tendenciu a ak nema, rozdeli si obdobie na viacero usekov, kde nema pokles a zrata rozdiely z jednotlivych usekov.....alebo nejake podobne riesenie, co by osetrilo znulovanie toho pocitadla.... verim, ze sa to da nejak jednoducho elegantne urobit, ale neviem ako... pls help


Odpovedať na tému [ Príspevok: 1 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. Help ku SQL

v Databázy

4

1007

13.02.2007 16:49

Tornado Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL PLEASE HELP ...zobrazenie všetkých riadkov až na..

v Databázy

6

404

25.11.2013 7:59

ChickenHunter79 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. help AMD Sempron 2800+ frekvencia 1700 help

v AMD - Advanced Micro Devices

16

1739

10.03.2007 9:13

dr.etker Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. LG M228WA-BZ 22'', Wide help help

v Monitory, televízory a projektory

1

1163

05.12.2007 12:41

OmeGa Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Sql

v Redakčné systémy

7

973

12.04.2007 9:55

mokus Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Sql.....

v Databázy

27

1721

18.07.2008 16:50

m4r14n Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Sql

v Dopyt práce

9

1046

21.10.2020 19:39

citizen Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL prikaz

v Databázy

8

1713

06.10.2009 19:21

rooobertek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL injection

v Služby a webstránky

1

293

27.02.2014 17:36

walther Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. DB sql

v PHP, ASP

1

438

27.08.2011 11:45

emer Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL injection

v Databázy

7

814

11.01.2010 17:17

Antuanet Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL worksheet

v Databázy

0

828

13.11.2008 21:50

lukinno Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL Injection

v PHP, ASP

2

679

07.01.2010 20:43

rooobertek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL samouk

v Databázy

11

3907

23.09.2009 17:32

Srnka0 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SQL Writer

v Operačné systémy Microsoft

3

505

04.05.2009 23:01

Jeffo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. microsoft sql

v Ostatné programy

1

820

04.02.2009 1:34

vivo Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra