timestamp
Mitglied Käsekuchen
Hallo yaslaw,
so ganz steige ich da noch nicht hinter:
Naja vielleicht kommt es mir so langsam, bin mir aber unsicher ob ich das schon replizieren könnte. Kennst du (oder jemand anders) eventuell ein gutes MySQL Buch, was sich mit soetwas auseinander setzt?
Dann habe ich außerdem noch eine Frage dazu, ich würde die Daten nach Autoren gruppieren (GROUP BY löscht mir leider alles bis auf einen Autor raus) bzw nach gruppierten Autoren sortieren. Ist das möglich in MySQL oder muss ich dazu über die Programmiersprache meiner Wahl gehen?
Ich würde z.B. gerne nach dem Feld a.a sortieren, am besten ein Beispiel dazu:
Wenn es von Hilfe ist, es gibt noch das Feld p.reihenfolge, was die Reihenfolge der Namen zu jeder ID angibt.
so ganz steige ich da noch nicht hinter:
SQL:
SELECT -- der Teil hier ist ja logisch
m.title,
a.a,
a.b,
a.c
FROM
(
SELECT
p_all.a_id -- Die brauche ich für die INNER JOINS am Ende des Querys?
p_all.m_id
FROM
a
INNER JOIN p AS p_select ON p_select.a_id = a.id -- Schnittmenge von allen Autoren mit der selben paar_id?
INNER JOIN p AS p_all ON p_all.m_id = p_select.m_id -- Schnittmenge von allen Paaren mit m_id?
WHERE
FIELD('suche', a.a, a.b, a.c) != 0
) AS p1
INNER JOIN a ON p1.a_id = a.id -- Alle Autoren mit der vorher gefundenen paar_id
INNER JOIN m ON p1.m_id = m.id -- Alle m_ids mit der vorher gefunden id
Naja vielleicht kommt es mir so langsam, bin mir aber unsicher ob ich das schon replizieren könnte. Kennst du (oder jemand anders) eventuell ein gutes MySQL Buch, was sich mit soetwas auseinander setzt?
Dann habe ich außerdem noch eine Frage dazu, ich würde die Daten nach Autoren gruppieren (GROUP BY löscht mir leider alles bis auf einen Autor raus) bzw nach gruppierten Autoren sortieren. Ist das möglich in MySQL oder muss ich dazu über die Programmiersprache meiner Wahl gehen?
Ich würde z.B. gerne nach dem Feld a.a sortieren, am besten ein Beispiel dazu:
Code:
--Datensatz: (id | a.a) (nur die beiden Felder aus Übersichtsgründen
1 | a
1 | g
1 | m
2 | n
3 | u
3 | c
3 | d
4 | e
4 | t
4 | r
-- Soll sortiert werden, zu:
1 | a --- a ist zuerst
1 | g
1 | m
4 | e -- dann e
4 | t
4 | r
2 | n -- dann n
3 | u -- dann u
3 | c
3 | d
Wenn es von Hilfe ist, es gibt noch das Feld p.reihenfolge, was die Reihenfolge der Namen zu jeder ID angibt.