Spos├│b na zbudowanie listy zmiennych na podstawie rekord├│w tabeli ┬ź Wr├│─ç do dokumentacji

Poni┼╝sze przyk┼éadowe zapytanie SQL┬áumo┼╝liwia ┼éatwe zbudowanie statycznej listy zmiennych na podstawie rekord├│w tabeli - poni┼╝szy przyk┼éad buduje rozdzielan─ů przecinkami list─Ö na podstawie tabeli Tag. Przydatne przy konieczno┼Ťci wykonania zapytania o dane z historiana dla listy zmiennych kt├│re mamy w tabeli sql (nie mo┼╝emy ich wynieni─ç statycznie)

DECLARE

@List varchar(MAX)
SET @List = ''
SELECT @List = @List + ''''+CONVERT(varchar, Tag.TagName) + ''',' FROM Tag
SELECT LEFT(@List, LEN(@List) - 1)

Przykład zapytania o historię zmiennych z wykorzystaniem dynamicznie skonstruowanej listy zmiennych:

declare

@sql nvarchar(Max)
set @sql = 'DECLARE @StartDate VARCHAR(255)
DECLARE @EndDate VARCHAR(255)
set @StartDate = ''2019-03-24 00:00:00''
set @EndDate = ''2019-03-26 00:00:00''
SELECT temp.TagName, temp.DateTime, temp.Value, temp.Quality, temp1.zmienna FROM
( SELECT History.TagName, DateTime, Value, Quality FROM Runtime.dbo.History
WHERE History.TagName IN (' + @List + ''''') AND vValue IS NOT NULL
AND wwRetrievalMode = ''Average''
AND wwResolution = 60000
AND wwVersion = ''Latest''
AND DateTime >= CAST(@StartDate AS VARCHAR(10))
AND DateTime < CAST(@EndDate AS VARCHAR(10))) as temp
INNER JOIN TableActiveTag_PP as temp1
ON temp.TagName=temp1.Zmienna'

exec

sp_executesql @sql

Słowa kluczowe : transpozycja, lista zmiennych, konwersja listy zmiennych, subquery

Program korzy┼Ťci

Korzy┼Ťci ze wsp├│┼épracy z ASTOR to nie tylko zakupione produkty. U nas ka┼╝dy klient wybiera, jak─ů warto┼Ť─ç dodan─ů otrzymuje po zakupie. Pami─Ötaj, ┼╝e Zyskujesz z ASTOR zawsze, bez odwo┼éania.

Wybierz korzy┼Ť─ç dla siebie

Program partnerski

Do Programu zapraszamy firmy integratorskie oraz producent├│w maszyn.
Wsp├│┼épracuj z nami regularnie i umacniaj wsp├│ln─ů pozycj─Ö w bran┼╝ach przemys┼éu oraz infrastruktury.

Co zyskam zostaj─ůc
certyfikowanym partnerem ASTOR?
Sprawd┼║ korzy┼Ťci »
Zostań partnerem

Kontakt

ASTOR Centrala
ul. Smoleńsk 29
31-112 Krak├│w

12 428 63 00
12 428 63 00
info@astor.com.pl

J─Özyk PL EN
© Copyright 2017 ASTOR. Wszystkie prawa zastrze┼╝one