webForumDet fria alternativet

räkna ut andel

1 svar · 241 visningar · startad av daniel_ra

daniel_raMedlem sedan jan. 2002381 inlägg
#1

Provar att göra såhär:

SUM(CASE WHEN i.ID is not NULL then 1 else 0 end) / count(*) as andel

men eftersom divisonen alltid her ett tal under 1 så blir andelen alltid 0

jag får korrekta värden då jag gör
SUM(CASE WHEN i.ID is not NULL then 1 else 0 end) BLIR 298
count(*) BLIR 1212

om jag dividerar med 100.0 så går det bra men count(*) blir ju inte ett decimaltal så jag lyckas inte få till det. Hur ska jag göra för att lösa detta.

daniel_raMedlem sedan jan. 2002381 inlägg
#2

löste det

cast(count(*) as decimal) så gör den om den till ett decimaltal och allt funkat fint

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)