![]() |
Datenbank: pgSQL • Version: egal • Zugriff über: php-Funktionen
Join in pgSQL?
Hallo ihr,
ich brauche fuer ein Datenbankabfrage in php einen JOIN. In mySQL ist dieser ja leicht zu realisieren:
SQL-Code:
Da das Script aber auf verschiedenen Datenbanksystemen laufen soll (mySQL, MSSQL, Access, pgSQL), muss das SQL-Statement teilweise angepasst werden, v.a. fuer pgSQL. Allerdings habe ich in der Doku keinen Hinweis auf Join-Befehle gefunden. Ist es wahr, dass es dort diese nicht gibt? Ich koennte es zwar so machen:
SELECT p.*, pc.cache_data
FROM ( posts p LEFT JOIN post_cache pc ON p.post_id = pc.post_id ) WHERE p.topic_id = <someid>
SQL-Code:
Um ehrlich zu sein gefaellt mir das Query ueberhaupt nicht. Gibt es denn keine einfachere Variante als ueber UNION zu arbeiten? :gruebel:
SELECT p.*, pc.cache_data
FROM posts p, post_cache pc WHERE p.topic_id = <someid> AND p.post_id = pc.post_id UNION ( SELECT p.*, NULL FROM posts p WHERE NOT EXISTS ( SELECT pc.post_id FROM posts p, post_cache pc WHERE p.topic_id = <someid> AND p.post_id = pc.post_id ) AND p.topic_id = <someid> ) Greetz alcaeus [edit]Offene Frage[/edit] |
Re: Join in pgSQL?
|
Re: Join in pgSQL?
Moin,
das sieht ja sehr gut aus :) Ab welcher Version sind die Joins denn enthalten? In dem Script das ich hier vor mir habe (ist ca. 3 Jahre alt und eigentlich nicht von mir) wird noch mit der oben beschriebenen Variante gearbeitet, deshalb dachte ich die gibts nicht :stupid: Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz