undso: Mit INNER JOIN 3 Tabellen verbinden

Beitrag lesen

Hi Ilja, mein Retter ist wieder Anwesend ;)

welches dbms und welche version ? beispieldaten angeben, sowohl inhalte der tabellen als auch das gewünschte result.

mysql 4.1.10

Von der dritten Tabelle, die präfix_kommentare heißt, brauche ich den count(*), wieviele Kommentare (Zeilen) von "where C.userid=1" in der Spalte Userid vorhanden sind.

wie du diesen COUNT einbaust, ist abhängig von deinem dbms und der version. deswegen ist es immer wichtig, diesen zu kennen. desweiteren ist es interessant zu wissen, wo die selektion C.userid=1 stattfinden soll, sprich ob sie sich auf die ganze query auswirken soll oder nur auf den count. deswegen sind beispiele so wichtig, weil sie meistens für uns mehr aussagen als erklärungen.

Es sollte sich nicht auf die Query ausirken. Zu der vorhandenen Query soll er einfach noch von der dritten Tabelle die Summe der Datensätze ermitteln, die im Where-Klausel mit wehre userid=1 angegeben ist. Das "C" habe ich stelltvertretend für die dritte Tabelle eingefügt. Dürfte schon richtig sein ne?

Wenn man die obere Query abfrage, braucht er ungefähr 0.03.. Sekunden. Das ist normalerweise schlecht ne?

ich kenne kein projekt, wo 0.03 sekunden ausführungszeit ein problem wäre.

Das ist beruhigend ;)

damit setzt du gar nichts, sondern du joinst die tabellen über diese spalten. PK werden einmal beim erstellen der tabellen festgelegt und ändern sich (im idealfall) nicht mehr.

In der Tabelle präfix_kommentare ist der PK auf kommentarid. Hatte mir überlegt, ob ich den auf galerieid setzen soll oder auf kommentarid, deshalb lautete meine Frage, ob ich zwei PK's setzen kann,da man die Tabelle öfters mit galerieid und kommentarid anspricht.
Ich arbeite mich mal die Tage in ganzen verschiedenen Schlüsseln einer Tabelle ein, damit ich das Ansprechverhalten optimiere.

Grüße ;)
undso