Temat: CASE

Pisze procedure i mam pewnien problem

fragment

SELECT @OffOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE value = 0
SELECT @OnOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE value = 1
SELECT @NullOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE value is Null

SELECT top 1 @LatestDateTime=dt,@LatestValue=value FROM #DiscreteHistoryData WHERE dt <=@End ORDER BY dt DESC
IF (SELECT @LatestDateTime)<@End
BEGIN
INSERT #DiscreteHistoryData VALUES(
@End,
case @LatestValue
when 1 then 0
when 0 then 1


"
jak zapisać warunek,że jeżeli jest wartość Null to ma ustawić '0'??

'when is Null then 0' ?--> mam error

konto usunięte

Temat: CASE

`Piotr Sowa edytował(a) ten post dnia 12.02.12 o godzinie 15:52

konto usunięte

Temat: CASE

COALESCE(@param , 0)
Piotr Śmigielski

Piotr Śmigielski Starszy Analityk
Marketingowy

Temat: CASE

To chyba trzeba tak Case When @LatestValue is null then 0.
Mi tylko tak działa.
Jakub Boroch

Jakub Boroch Bazy Danych,
Projektowanie,
Analiza systemowa,
Programowanie

Temat: CASE

use SET vs SELECT when assigning values to variables
http://www.mssqltips.com/tip.asp?tip=1888&ctc
Marcin Miga

Marcin Miga Programista. Po
prostu programista.

Temat: CASE

Jarek Zielonka:
Pisze procedure i mam pewnien problem

fragment

SELECT @OffOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE
value = 0
SELECT @OnOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE
value = 1
SELECT @NullOccurances = COUNT(*) FROM #DiscreteHistoryData WHERE value is Null

SELECT
@OffOccurances = Sum(CASE WHEN value = 0 THEN 1 ELSE 0 END),
@OnOccurances = Sum(CASE WHEN value = 1 THEN 1 ELSE 0 END),
@NullOccurances = Sum(CASE WHEN value Is Null THEN 1 ELSE 0 END)
FROM #DiscreteHistoryData

Myślę, że tak będzie nieco szybciej

konto usunięte

Temat: CASE

select isnull(param,0) ?

Jak napisał Piotr - działa takie coś (po BEGIN):


INSERT into #DiscreteHistoryData
SELECT @End,
case
when @LatestValue=1 then 0
when @LatestValue=0 then 1
when @LatestValue is null then 0
end
Michał Kowalczyk edytował(a) ten post dnia 10.12.09 o godzinie 23:26
Waldemar Kowalewski

Waldemar Kowalewski Programista,
SYSTHERM INFO Sp. z
o.o.

Temat: CASE

Zapis jest jak najbardziej poprawny...



Wyślij zaproszenie do