webForumDet fria alternativet

fieldcount - få fram antal fält som innehåller data i en post

Databaser & SQL

2 svar · 176 visningar · startad av max

Medlem sedan jan. 200090 inlägg
Frågan#1

Säg att du har poster som innehåller 4 fält, ID samt 3 fält där användaren kan ha matat in data.

Nu vill jag få fram hur många fält som är ifyllda i varje post.

Ett exempel
ID Sprak1 Sprak2 Sprak3 Skall ge (Antal)
100 Sv Ty En 3
101 Sv En Null 2
102 Sv Null Null 1

Lite psuedo kod

SELECT FieldCount(Sprak1, Sprak2, Sprak3) AS Antal FROM SprakElev
WHERE ID = '100' AND Antal IS Not NULL

Jag vet att detta bryter mot någon normaliseringsregel, men nu är det som det är.

Vore tacksam för svar.

Medlem sedan dec. 200012 464 inlägg
#2
select case when sprak1 is null then 0 else 1 end +
case when sprak2 is null then 0 else 1 end +
case when sprak3 is null then 0 else 1 end as antal from poster

Om du har Access som databas så får du säga till eftersom ovanstående standardsql inte stöds av Access.

Medlem sedan jan. 200090 inlägg
#3

Tack LarsG!

Fungerar perfekt i sql.

Misstänker att det är iif om det skall passa för Access?

Ha en bra dag

262 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)