mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 01:09 Benutzername: Passwort: Auto-Login

Thema: [MySQL] Join über 3 und mehr Tabellen … vom 26.09.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [MySQL] Join über 3 und mehr Tabellen …
Seite: Zurück  1, 2
Autor Nachricht
beeviZ
Threadersteller

Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 28.09.2006 16:03
Titel

Antworten mit Zitat Zum Seitenanfang

XSchinkenX hat geschrieben:
hm... schnellschuss, ungetestet wie immer:
Code:

SELECT gastro_name FROM g_main
INNER JOIN g_main_x_type ON g_main_x_type.gastro_id = g_main.gastro_id
INNER JOIN g_type ON g_type.type_id = g_main_x_type.type_id
WHERE g_type.type_name = 'Kneipe' OR g_type.type_name = 'Café'
GROUP BY g_main.gastro_name;



also... denk mal das stimmt, berichtigen lass ich mich natürlich.



leider das selbe in grün.
aber lassen wir die komplizierten joins doch erstmal weg.

wie bekomme ich in die tabelle main_x_type dazu, das sie mir 1 anzeigt, wenn ich in ihr suche welche gastro_id unter type_id die werte 2 und 3 zugeordnet hat?
  View user's profile Private Nachricht senden
Account gelöscht


Ort: -
Alter: -
Verfasst Do 28.09.2006 16:20
Titel

Antworten mit Zitat Zum Seitenanfang

Aso *Schnief* in der Bedingung (where-clause) natürlich AND anstelle von OR verwenden... das ist trivial. Ohne Joins gehts nicht, willst du nicht eine Transaktion mit drei SELECT-Statements verwenden.

Also bitte!!!


Zuletzt bearbeitet von am Do 28.09.2006 16:21, insgesamt 2-mal bearbeitet
 
Anzeige
Anzeige
beeviZ
Threadersteller

Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 28.09.2006 17:20
Titel

Antworten mit Zitat Zum Seitenanfang

wenn ich AND anstelle von OR benutze findet er garnix. Ich habs mal mit 2 Joins versucht, das endete dann so:



prinzipiell schonmal nich schlecht. allerdings müsste ich die zeilen 1 & 2 in eine zeile kriegen und zeile 3 dürfte nich angezeigt werden, weil erfüllt nich beide suchkriterien.

aber lassen wir doch die joins und anderen tabellen und alles mal weg und konzentrieren uns einzig und alleine auf die g_main_x_type.

wie müsste man denn da selecten wenn wir sagen wir mal alle gastro_ids angezeigt bekommen wollen welche einen eintrag haben bei g_main_x_type.type_id = 2 AND g_main_x_type.type_id = 3 ?


//edit:
Code:
SELECT gastro_id, GROUP_CONCAT(type_id SEPARATOR ', ') AS t FROM g_main_x_type GROUP BY (gastro_id)


gibt mir haargenau das was ich will:
Code:
Array
(
    [gastro_id] => 1
    [t] => 2, 3
)
Array
(
    [gastro_id] => 2
    [t] => 2
)


allerdings kann ich „t“ nich nach 2 & 3 durchsuchen, weil er mir dauernd erzählt
Zitat:
#1054 - Unknown column 't' in 'where clause'
, weswegen ich damit auch schon wieder nich aussortieren kann welcher laden wirklich nur 2 & 3 (und meinetwegen auch mehr) hat … ideen?

Zuletzt bearbeitet von beeviZ am Do 28.09.2006 17:27, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen [MYSQL & PHP || GELÖST] -> Join-Abfrage
MySQL: Left JOIN Problem
[PHP&MySQL] Insert in 2 Tabellen
[PHP/MySQL] Tabellen zusammenführen
[PHP/MySQL] Tabellen automatisch wiederherstellen?
Problem mit mysql, Verknüpfung von Tabellen
Neues Thema eröffnen   Neue Antwort erstellen Seite: Zurück  1, 2
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.