phpbar.de logo

Mailinglisten-Archive

geht das auch ohne PHP

geht das auch ohne PHP

Norbert Pfeiffer norbert at itbw.de
Sam Apr 7 12:32:36 CEST 2007


Hallo,

in einer Tabelle stehen Objekte mit eindeutigen IDs.
CREATE TABLE objects {
   oID  int(11) NOT NULL auto_increment,
   name varchar(11) NOT NULL default '',
   PRIMARY KEY (oID)
}

In einer zweiten Tabelle stehen dazu Eigenschaften.
CREATE TABLE propertys {
   oID   int(11) NOT NULL default 0,
   props varchar(11) NOT NULL default ''
}

Sucht man jetzt nach einer Eigenschaft, erhaelt man u.U. die oID
von mehreren Objekten, was soweit auch okay ist.

Derzeit packe ich diese oID's in ein Array und lasse zu jedem Objekt
alle Eigenschaften ausgeben. Das klappt, ist jedoch etwas langsam,
weil man zwei Querys absetzen muss.

   SELECT o.oID
     FROM objects AS o
LEFT JOIN propertys AS p
       ON o.oID = p.oID
    WHERE props IN ('gelb', 'rot');

   SELECT o.oID, o.name, p.props
     FROM objects AS o
LEFT JOIN propertys AS p
       ON o.oID = p.oID
    WHERE o,oID IN (12, 23, 174, 233);

Deshalb die Frage, wie kann man aus diesen zwei Querys eines machen?

Und ideal waere es, wenn man die Eigebnschaften eines Objektes in
eine Zeile bekommen wuerde, d.h. in obigen Beispiel bleiben ganze
vier Zeilen uebrig, gegenueber den drei Dutzend jetzt.


m. b. G.   Norbert
------------------
mobil 0177-1741686
------------------
e.o.m. 


_______________________________________________
Allgemeine Infos zur Liste: http://www.4t2.com/mysql/
Verwaltung: https://lists.4t2.com/cgi-bin/mailman/listinfo/mysql-de

php::bar PHP Wiki   -   Listenarchive