webForumDet fria alternativet

IIF(expr, true, false)

Databaser & SQL

2 svar · 188 visningar · startad av PatrikB

Medlem sedan mars 20002 836 inlägg
Frågan#1

Hello!

skulle behöva lite hjälp med en liiiten sql-fråga

Det är så att jag behöver summera lite olika saker MEN om ett fält innehåller 0 så ska beräkningen göras på 2 andra fält.

db-struktur (det väsentliga)

tblAvvikelse
============
- fldFelkod
- fldTim
- fldKostnad
- fldStdPris
- fldPrisPer

Denna fråga funkar klockrent:

SELECT Count(*) As AvvTotal, fldFelkod, Sum(fldTim) As TotalWorkCost FROM tblAvvikelse WHERE fldFelkod = '101' GROUP BY fldFelkod"

Det jag skulle behöva är:

Om fldKostnad = 0 så ska en summering av fldStdPris/fldPrisPer göras
Om fldKostnad <> 0 så ska en summering av fldKostnad göras

Går det överhuvudtaget att göra?

cya,
PatrikB

Medlem sedan dec. 200012 464 inlägg
#2

access alltså?

sum(iif(fldkostnad=0,fldStdPris/iif(fldPrisPer=0,1,fldPriser),fldkostnad))

Medlem sedan mars 20002 836 inlägg
#3

Jepp, tyvärr är det Access ....

Löste det på ett annat sätt ... lite normalisering .... vart ett par timmar extra jobb, men bra mycket smidigare att få tag på info

Tackar ändå .... och ska testa ...... kommer säkert till användning ngn annan ggn

cya,
PatrikB

261 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)