PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit einer Sql Abfrage


Mr.Freemind
2007-05-17, 16:31:27
Servus,

Also cih habe da ein Problem mit einer Aufgabe bekomme alle Sql Abfragen hin bis auf eine.

Hier die Tabelle:

http://img153.imageshack.us/img153/8841/tabelleiv2.jpg

Nun soll ich folgende Abfrage erstellen: Geben Sie die Namen der Moderatoren aus, die für mehr als einen Sender tätig sind.


Ich bekomme das ums sterben nicht hin!

Ich danke euch schonmal im Voraus

Grüße

Mr.Freemind

TheGamer
2007-05-17, 17:01:14
Servus,

Also cih habe da ein Problem mit einer Aufgabe bekomme alle Sql Abfragen hin bis auf eine.

Hier die Tabelle:

http://img153.imageshack.us/img153/8841/tabelleiv2.jpg

Nun soll ich folgende Abfrage erstellen: Geben Sie die Namen der Moderatoren aus, die für mehr als einen Sender tätig sind.


Ich bekomme das ums sterben nicht hin!

Ich danke euch schonmal im Voraus

Grüße

Mr.Freemind

SELECT * FROM `Sendung` group by Moderator having count(Moderator) > 1

Rauskommt:

Moderator:
Günther in dem Fall

Kann aber auch anderst gemacht werden, es funktioniert aber

Mr.Freemind
2007-05-17, 17:13:28
Dank dir,

solch eine Idee hatte ich auch schon aber berücksichtigt diese nciht die Voraussetzung mit den zwei verschiedenen sender. Bei solch einer Abfrage kann er ja mehrere Sendungen bei einem Sender haben.

TheGamer
2007-05-17, 17:20:55
Dank dir,

solch eine Idee hatte ich auch schon aber berücksichtigt diese nciht die Voraussetzung mit den zwei verschiedenen sender. Bei solch einer Abfrage kann er ja mehrere Sendungen bei einem Sender haben.

Ups ja hast recht ist bullshit, das wird bei mir nicht berücksichtigt

Coda
2007-05-17, 17:25:17
Also imho funktioniert das nicht.

SELECT Moderator FROM `Sendung` GROUP BY `Moderator` HAVING COUNT(DISTINCT `Sender`) > 1

Sollte gehen. Und ja ich hab grad auch ne Weile gebraucht ;)

TheGamer
2007-05-17, 17:28:37
Also imho funktioniert das nicht.

SELECT Moderator FROM `Sendung` GROUP BY `Moderator` HAVING(COUNT(DISTINCT `Sender`) > 1)

Sollte gehen. Und ja ich hab grad auch ne Weile gebraucht ;)

Meins ging schon, berücksichitgt aber eben nicht alles. Musste auch nachdenken ne Weile :D

Deins geht aber auch nichrt :D


EDIT: ich habs

Berücksichtigt auch wenn einer 2 Shows am gleiche sender hat

Ich habe folgende Tabelle (csv)


"RTL";"Günther";"WWM"
"RTL";"Tooske";"DSDS"
"ARD";"Blacky";"ALGL"
"ARD";"Günther";"Talk"
"MTV";"Bam";"VLB"
"MTV";"Sarah";"Kut"
"RTL";"Tooske";"dd"


führe foglenden select aus


SELECT Moderator, count(distinct(Sender)) as Arbeitgeber FROM `Sendung` group by Moderator order by Arbeitgeber desc


Der oberste ist dann GÜnther und hat 2 Arbeitgeber

Coda
2007-05-17, 17:34:57
Deins geht aber auch nichrt :D
Tut es wohl. Man beachte das DISTINCT beim Sender-Count.

TheGamer
2007-05-17, 17:41:28
Tut es wohl. Man beachte das DISTINCT beim Sender-Count.


Kann sein das es nicht von Anfang an da war? Ich hab das von dir markiert und in phpmyadmin eingefuegt aber distinct war nicht da. Hatte evt das falsche im Clipboard

Aber das ist eh gescheiter, du hast das richtige im Ergebnis ich auch, aber nicht nur :D

Coda
2007-05-17, 17:42:55
Kann sein das es nicht von Anfang an da war?
Nicht das ich wüsste...

Außerdem soll man nur die Namen ausgeben die auch wirklich bei 2 Sendern tätig werden, das tut deine Abfrage leider nicht ;)

Mr.Freemind
2007-05-17, 17:52:35
Danke euch beiden.

Freut mich das solche Abfragen auch auf "Gegenliebe" stossen:tongue:

Wenn ihr wollt ich habe noch paar von dem Kaliber.:smile: