IIF(expr, true, false)

Databaser & SQL

2 svar · 196 visningar · startad av PatrikB

Medlem sedan mars 20002 836 inlägg
Trådstart#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

244 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
115 ms — ändringar (db)