Schrift
[thread]3784[/thread]

mysql-Abfrag: kompliziert? Ich kriegs net hin...



<< >> 5 Einträge, 1 Seite
steinwolf
 2007-02-12 20:37
#35231 #35231
User since
2003-08-04
367 Artikel
BenutzerIn
[default_avatar]
Aaaaalso, ääh, wie fang ich an??
"Did you know? You can use your old motor oil to fertilize your lawn." - Blinkster - Professionelles EDV Forum
Ronnie
 2007-02-12 20:38
#35232 #35232
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=steinwolf,12.02.2007, 19:37]Aaaaalso, ääh, wie fang ich an??[/quote]
Am Anfang ;)
steinwolf
 2007-02-12 20:54
#35233 #35233
User since
2003-08-04
367 Artikel
BenutzerIn
[default_avatar]
Hab ausversehn wohl auf senden geklickt, siehe thread 2 *lol*

sorry, guys

Modedit:

Quote
Aaaaalso, ääh, wie fang ich an??

Ich habe drei Datenbanken:

Programme
Kategorien
Database

Database ist eine zweispaltige Tabelle aus Programme.id und Kategorie.id

Ich versuche nun die Anzahl der Programme, die in den jeweiligen Kategorien zugeordnet sind, als Zahlen auszugeben.

Die Ausgabetabelle soll also zum Beispiel so aussehen:

Security -> 2
Firewalls -> 5
Tabellenkalkulation -> 22


usw...

Database sieht also zum Beispiel so aus

1 -> 2
1 -> 1
2 -> 1

usw.. sind also nur die IDs, wobei die erste ID, die Kategorie-ID ist und die zweite die Programm-ID

Die Tabellen kann man sich ja ganz einfach vorstellen, zum Beispiel Tabelle "programm" nur mit den Infos Programmname und der unique id, genauso die Kategorientabelle: Nur Kategorienname und Kategorie-ID. Mehr nicht. Allerdings schaffe ich es nicht, diese Aufgabe in eine MYSQL-Abfrage zu packen.

Ich habs bis jetzt so versucht:

Code: (dl )
1
2
3
4
5
SELECT * 
FROM `cat` AS A
LEFT JOIN `database` AS B ON A.id = B.cat_id
GROUP BY A.name
LIMIT 0 , 30

Das ist aber total falsch, ich brauche wirklich nur den Kategoriennamen und die Anzahl der über "Database" zugeordneten Programme...

Kann mir wer helfen??

mfg
steinwolf
\n\n

<!--EDIT|Relais|1171307305-->
"Did you know? You can use your old motor oil to fertilize your lawn." - Blinkster - Professionelles EDV Forum
pq
 2007-02-12 21:10
#35234 #35234
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[sql]SELECT c.name,c.id, count(p_id)
FROM cat c
LEFT JOIN program_cat pc ON pc.cat_id =c.id
LEFT JOIN program p ON pc.p_id =p.id
GROUP BY cat_id[/sql]
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
steinwolf
 2007-02-13 11:40
#35235 #35235
User since
2003-08-04
367 Artikel
BenutzerIn
[default_avatar]
Funktioniert tatsächlich. Danke pq *schmatz*

:)
"Did you know? You can use your old motor oil to fertilize your lawn." - Blinkster - Professionelles EDV Forum
<< >> 5 Einträge, 1 Seite



View all threads created 2007-02-12 20:37.