Just nu i M3-nätverket
Jump to content

kan man göra detta i sql??


malvax

Recommended Posts

hallå.. detta e mitt problem..

 

jag vill ha fram uppgifter på den kurs som har mest

genomströmning, alltså minst ig

 

detta e mina tabeller..

 

Kurs(kurskod, kursnamn, kurstyp)

 

HarLast(studentid, kurskod, betyg)

 

 

först måste man ju räkna ut % hur många som har vg,g

på varje kurs. Sedan måste detta jämföras med hur många som läser kursen.

 

nån som kan detta??

 

 

 

 

 

 

 

it´s like that all the way to the top, wiseguy to skipper..skipper to boss..

forget about it..

 

Link to comment
Share on other sites

Magnus Ahlkvist

SELECT kurskod,count(*),kursnamn,kurstyp,betyg,cast((cast(count(*) as float)/(select count(*) from harlast h where h.kurskod=k.kurskod))*100 as numeric(5,2)) as Procent
FROM kurs k
inner join harLast hl
ON hl.Kurskod=k.Kurskod
GROUP BY kurskod,kursnamn,kurstyp,betyg
ORDER BY KURSKOD

 

Sen är det manuell granskning som gäller.

Vill du bara ha ut vilken kurs som mest genomströmning

så är det

 

SELECT TOP 1 kurskod,count(*),kursnamn,kurstyp,betyg,cast((cast(count(*) as float)/(select count(*) from harlast h where h.kurskod=k.kurskod))*100 as numeric(5,2)) as Procent
FROM kurs k
inner join harLast hl
ON hl.Kurskod=k.Kurskod
WHERE (betyg='VG' OR betyg='G')
GROUP BY kurskod,kursnamn,kurstyp,betyg
ORDER BY COUNT(*) DESC

--

Snäll ibland. Rättvis nästan jämt. Elak för det mesta.

 

Link to comment
Share on other sites

tack för svaret, men jag fick inte det att funka..

kan det bero på att ja kör sql server?

 

skulle du vilja förklara vad cast innebär?, jag har inte hållit på så länge med sql, så många begrepp är nya för mig.

 

om du har en förklaring e jag tacksam

 

 

 

Link to comment
Share on other sites

Magnus Ahlkvist

Cast är en typconvertering. Den används i mitt exempel för att göra om ett integer-värde till ett flyttal (float), och sedan för att göra om ett flyttal till exakt precision (numeric).

 

 

Vad är det du inte får att funka?

 

Mitt exempel är skrivet för SQL Server.

 

 

--

Snäll ibland. Rättvis nästan jämt. Elak för det mesta.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...