Just nu i M3-nätverket
Gå till innehåll

Beräkning


SandraS

Rekommendera Poster

Hej!

Jag har en till fråga som någon gärna får hjälpa mig med =)

Jag läser in flera textfiler åt gången i min databas... varje fil innehåller bland annat en temperatur... Jag skulle vilja göra en beräkning där om fem inläsningar i rad innehåller temperatur som överstiger ett maxvärde så ska det generera en avvikelse.... Annars inte

 

Det måste väl gå att baka in en if-sats i select-satsen på något sätt?

Vet inte hur bara... såhär ser min kod ut för tillfället ... vet att if-satsen inte är rätt men vet inte hur jag ska fortsätta....

 

CREATE PROCEDURE dbo.getReading(@_nodes int)

AS SELECT ID, Name, maxTemperature, minTemperature, temperature

FROM dbo.Reading

WHERE (nodeID = @_nodes)

if temperature>maxTemperature

temperature=avvikelse

end if

GO

 

 

Snälla hjälp mig!

Tack på förhand!

Mvh

Sandra

 

Länk till kommentar
Dela på andra webbplatser

Inför en variabel rakna som ökar med ett varje gång temp>maxtemp och som genererar en avvikelse om rakna=5. Varje gång temp<maxtemp nollställs rakna.

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Vet inte om avvikelse var ett fält i tabellen eller ett beräkningsresultat. Exemplet nedan förutsätter att det är ett fält:

SELECT ID, Name, maxTemperature, minTemperature, CASE SIGN(temperature-maxTemperature) WHEN 1 THEN avvikelse ELSE temperature FROM ....

AnjunaMoon

____________________________________________________________

/* There is nothing more permanent than a temporary solution... */

 

Länk till kommentar
Dela på andra webbplatser

Avvikelse ska vara ett beräkningsresultat... kanske skulle ha skrivit det... hm det är så när man inte har så stor koll på det här =)

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Ok, men du bör kunna använda mitt uttryck likväl och klämma in ditt beräknade resultat där jag angivit "avvikelse"

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...