Toon posts:

[sql] Moet ik hier een lus voor gebruiken?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Aangezien mijn vorige topic gesloten, open ik maar een nieuwe. Ik zal alles wat beter proberen uit te leggen. Om terug te komen op het vorige topic: ik was al goed op de hoogte over de mogelijkheden van count, sum en group by.

Dit is nogmaals het probleem:
In mijn database zitten Muziekstukken. Al deze muziekstukken zijn gemaakt door een of meerdere instrumenten. Het is dus een een op veel verhouding. In de tabel Aantalinstrumenten per muziekstuk zitten 2 waarden: stuknr(het nummer van het muziekstuk) en aantalInstrumenten(aantal instrumenten van het desbetreffende muziekstuk). Nu is de opdracht om het aantal muziekstukken met 1 instrument te geven, met 2 instrumenten, met 3 instrumenten, enzovoort enzovoort.

Nu werd in het vorige topic gezet: kijk nog eens naar de mogelijkheden van sum, count en group by. Ik heb deze statements nogmaals bekeken om zeker te weten dat ik niks over het hoofd heb gezien, maar ik kom er nog steeds niet uit.
Wel heb ik de query om bv. het aantal muziekstukken te tonen met een instrument:

code:
1
2
3
SELECT     COUNT(stuknr) AS Expr1
FROM         Aantal_instrumenten_per_muziekstuk
WHERE     (AantalInstrumenten = 1)


Hier was ik al lang achter... maar is er nu een gestructureerde manier om dit voor álle getallen zo te doen (stukken met 2, stukken met 3 blablabla)?

Dit is het url van m'n vorige topic: [rml][ SQL] Resultaten met dezelfde waarden optellen[/rml]

Ben ik verkeerd begrepen, of ben ik nou gewoon stom?

Verwijderd

Heb je al geexpirimenteerd met GROUP BY?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 00:24

gorgi_19

Kruimeltjes zijn weer op :9

[rml]gorgi_19 in "[ SQL] Resultaten met dezelfde waarden op"[/rml]

In deze post heb ik je SQL statement ongeveer opgenoemd, je hoefde hem alleen nog te vertalen!

En inderdaad: alleen nog een group by functietje erin knallen (en natuurlijk de 2e kolom, die je wilt weten) en dan klaar...

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
ik heb wat gerommeld ja, maar ik vind ms sql server lastig werken, want hij geeft veel fouten. het programma werkt niet echt mee. Met group by kom ik er niet echt uit.... soms is het resultaat een rijtje met enen, en dan weer helemaal niks.. :( tips?

Verwijderd

Maar zeg dan wat je geprobeerd hebt ... dan kunnen we je vertellen wat je fout doet. En er is nix mis met MS SQL Server .... dit is gewoon basis SQL kennis, vrijwel overal gelijk m.b.t. GROUP BY

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 00:24

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 17 oktober 2002 @ 21:35:
ik heb wat gerommeld ja, maar ik vind ms sql server lastig werken, want hij geeft veel fouten. het programma werkt niet echt mee. Met group by kom ik er niet echt uit.... soms is het resultaat een rijtje met enen, en dan weer helemaal niks.. :( tips?
Wat heb je dan nu voor query, MET group by erin?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Even hardop praten:
Selecteer Aantal instrumenten, Telling van muziekstukken als AantalMuziekstukken uit de tabel Tabelnaam, gegroepeerd bij aantal instrumenten, geordend bij aantal instrumenten.
Dat is dus vertaald?:
code:
1
2
3
4
SELECT aantalinstrumenten, COUNT(stuknr) AS AantalMuziekStukken
FROM Aantal_instrumenten_per_muziekstuk
GROUP BY AantalInstrumenten
ORDER BY AantalInstrumenten


hey zeg ik ga me toch voor gek laten verklaren! net niet, nu wel... nou ja, ik geef de schuld aan microsoft :P anyway bedankt :/

  • whoami
  • Registratie: December 2000
  • Laatst online: 07-04 22:26
Verwijderd schreef op 17 oktober 2002 @ 21:43:
[...]

Dat is dus vertaald?:
code:
1
2
3
4
SELECT aantalinstrumenten, COUNT(stuknr) AS AantalMuziekStukken
FROM Aantal_instrumenten_per_muziekstuk
GROUP BY AantalInstrumenten
ORDER BY AantalInstrumenten


hey zeg ik ga me toch voor gek laten verklaren! net niet, nu wel... nou ja, ik geef de schuld aan microsoft :P anyway bedankt :/


Idd, dat is de goede oplossing. Was het daarom nu nodig om 2 topics daarover te openen?
Daarnet zal het ook wel gewerkt hebben, maar je zult iets verkeerd gedaan hebben.
Trouwens, zomaar een nieuw topic openen omdat het andere gesloten werd, is not done.

https://fgheysels.github.io/


  • Spaceman Spiff
  • Registratie: Juli 2002
  • Laatst online: 09-12-2025
Als je aangeeft dat je moeite hebt om een bepaald probleem op te lossen (zoals jij mijn inziens correct doet) dan zullen we je hints geven.
Met deze hints hopen wij dat je dan zelf achter de oplossing komt zodat het leereffect het grootst is.
We kunnen je ook wel kant en klare oplossingen geven, maar dan leer jij er zo weinig van.

Buiten dit het feit is het wel dat je een erg basic vraag stel op een tweakers forum. Met de voorbeelden in de help van MSSQL had je dit antwoord ook eenvoudig kunnen vinden.

Ik denk dat dit zo ongeveer de redenen zijn dat je een beetje sceptiesch behandeld bent.
Pagina: 1