webForumDet fria alternativet

dela procent

6 svar · 439 visningar · startad av annasmurf

annasmurfMedlem sedan mars 2006237 inlägg
#1

hej!

jag har en tabell där jag har data, en kolumn har värdert -1 och jag vill räkna ut hur många procent av all data i samma tabell som har värdet -1
försökt med detta

select (select count(Använt) AS använt from  u513.TblPresentkortID where Använt=-1) as typ0
,(select count(Använt) as test from u513.TblPresentkortID) as tr,
,(select (typ0/tr) from  u513.TblPresentkortID) as t

men blir fel..någon som kan?

LarsGMedlem sedan dec. 200012 465 inlägg
#2
select 100.0*(sum(case when använt = -1 then 1.0 else 0.0 end)/1.0*count(*)) as percent
  from u513.TblPresentkortID
annasmurfMedlem sedan mars 2006237 inlägg
#3

får då detta felmedelande
Server: Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'percent'.

@ndersMedlem sedan juni 200026 914 inlägg
#4

Percent kan vara reserverat om du använder SQL Server. Byt namn på det skapade fältet till något annat.

annasmurfMedlem sedan mars 2006237 inlägg
#5

funkar inte ändå med detta får då svaret:

36902700.000000

svarat ska bli 41,85% om jag räknar ut manuellt

Peter SMedlem sedan dec. 20025 484 inlägg
#6

Hur ser din exakta SQL-fråga ut nu?

annasmurfMedlem sedan mars 2006237 inlägg
#7

så som larsG sa

select 100.0*(sum(case when använt = -1 then 1.0 else 0.0 end)/1.0*count(*)) as test
  from u513.TblPresentkortID
Genererad på 368 ms · cache AV · v20260730165559-full.f96bc7eb