webForumDet fria alternativet
Logga in / Bli medlem

SQL Hjälp

Databaser & SQL

8 svar · 306 visningar · startad av mlt

Medlem sedan okt. 20046 inlägg
Trådstart#1

Hej!
Har ett problem med en sql-fråga rörande tabellen Kostnad:
I tabellen finns bland annat två fält som heter prekostnad och defkostnad. Jag vill visa data ur tabellen och inkludera defkostnad om inte defkostnad är 0,00 eller NULL.
Om defkostnad är 0,00m så vill jag visa prelkostnad istället....

Kan någon hjälpa mig?
Tack!

/M

Medlem sedan juni 200032 967 inlägg
#2

Innan frågan går att svara på vill vi veta vilken dbms du använder. :)

Medlem sedan okt. 20046 inlägg
#3

Jag använder en Access databas.
/M

Medlem sedan juni 200032 967 inlägg
#4

Det enklaste är nog att göra det i applikationen, men om man vill kan man göra ungefär så här:

SELECT fld1, prelkostnad, 
IIF(IIF(defkostnad IS NULL, prelkostnad, defkostnad) = 0, prelkostnad, defkostnad) AS defkostnad2 
FROM Kostnad

mvh

Medlem sedan okt. 20046 inlägg
#5

Tack för ditt förslag, tyvärr så fick jag felmeddelande när jag testade det:
"Cirkelreferens orsakad av aliaset DefKostnad i frågans SELECT-instruktion". Försökte med val av andra fältnamn, men fick istället ngt annat följdfel. Har du någon idé om vad jag ska göra?

Tack!
/M

Medlem sedan juni 200032 967 inlägg
#6

Hmm, ja, det kanske inte var så lurt det där. :)

Prova att sätta ett annat alias bara:

... AS defkostnad2 ...

eller så.

Mvh

Medlem sedan okt. 20046 inlägg
#7

Tack! Jag tror att mina problem är lösta ; )
/M

Medlem sedan juni 200032 967 inlägg
#8

Varsågod! :)

Använd gärna Acceptera som slutgiltigt svar för att göra det lättare för andra att hitta lösning på liknande problem.

Mvh

Medlem sedan juni 200032 967 inlägg
#9

... fast acceptera gärna då det svar som löste problemet åt dig. ;)

259 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)