freak: Ist diese Abfrage überhaupt möglich?

Beitrag lesen

Hallo.

Ich nutze PHP 5.3 mit PostgreSQl 8.4 mit Apache 2.2.14 auf Debian Lenny.

Ich möchte das man auf meiner Seite Kategorien und bestimmte Artikel zu seinen Favoriten hinzufügen kann.
Dazu folgende tabellen:

favorit_lists
listid uid name

favorit_favorites
listid CatOrArticleId catOrArticle(1=Kategorie, 2=Artikel)

board_category
categoryid categoryname

board_articles
articleid aricletitle

Ich möchte mit einem Query:

HOLE Listennamen und ListenIDs VON favorit_lists
WO die UID(userid) genau wie meine ist, anschließend hole für ejde liste, alle Einträge und danach hole für jeden eintrag, falls catOrArticle = 1 ist, den Namen der Kategorie aus board_category oder falls 2, den Namen des Artikels aus board_articles.

Ich verzweifel echt daran, mir fehlt einfach gerade die Logik wie das umzusetzen ist:

SELECT t1.listid, t1.name,  t2.catordiscid, t2.catordisc, t3.categoryname, t4.threadtitel  
						  FROM mainproject.favorit_lists AS t1  
						  LEFT JOIN mainproject.favorit_favorits AS t2 ON t2.listid=t1.listid  
						  RIGHT JOIN mainproject.board_category AS t3 ON t3.categoryid=t2.catordiscid  
						  RIGHT JOIN mainproject.board_thread AS t4 ON t4.threadid=t2.catordiscid  
						  WHERE t1.uid=".intval($uid)."

LG, freak