Portal > Foren > Datenbanken, Server, Betriebssysteme und sonstige Programmiersprachen > Datenbanken > Zelleninhalte dynamisch als Spalten-Namen zurückgeben?
Antwort
 
Themen-Optionen
Alt 12.03.2007, 11:54 Nach oben    #1
Bastian Fenske
 
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 826
Standard Zelleninhalte dynamisch als Spalten-Namen zurückgeben?

Hallo.

Ich möchte Folgendes umsetzen:
Ich hab eine Tabelle page_versions mit den Daten von Seitenversionen. Nun soll es eine weitere Tabelle pageversion_attributes geben mit den Feldern page_id, page_version, attriute und value. Hier sollen also dynamisch zu bestimmten Seiten(versionen) Attribute hinzugefügt werden können. Dar Grund dafür ist, dass verschiedene Komponenten, die in die Seite Seite einebunden werden können (aus denen die Seite letztlich besteht) so eine Schnittstelle bekommen sollen, um einer Seite (bzw. Version eben) direkt Daten hinzufügen zu können,auf die dann wiederum andere Komponenten zugreifen können.

Meine Frage wie ich die Daten einer Seite nun am geschicktesten auslese. Ich brauche am Ende einen Datensatz, der alle "direkten" Infos der Seitenversion enthält (Versionsnummer, Zeiten, Autor etc.) und dazu eben erweitert ist um die Attribute aus pageversion_attribues:

Code:
page_versions

id  | page_id | page_version | autor | ...
----+---------+--------------+-------+-----
100 |      42 |            5 |     1 | ...

pageversion_attributes

id | page_id | page_version |    attribute |  value
---+---------+--------------+--------------+---------
1  |      42 |            5 | header_image | x5gweA
2  |      42 |            5 |  was_anderes |    foo


Soll rauskommen:

array(
    'id'                     => '42',
    'version'                => '5',
    'author'                 => '1',
    'attribute_header_image' => 'x5gweA',
    'attribute_was_anderes'  => 'foo'
);
Geht wahrscheinlich nur, indem ich in einer ersten Query die "normalen" Daten auslese, in einer zweiten dann die erweiteren Daten (Attribute) und das dann von Hand zusammensetze, oder lässt sich sowas mit MySQL-Mitteln umsetzen?

Basti
Basti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.03.2007, 13:48 Nach oben    #2
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

Ich denke nicht das hier SQL Mittel existieren, selbst mit Subqueries wäre das extrem umständlich.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.03.2007, 16:58 Nach oben    #3
Christian Mühlroth
 
Benutzerbild von Chr!s
 
Registriert seit: 04.09.2005
Ort: Nürnberg
Beiträge: 561
Standard

Zitat:
Zitat von WarrenFaith Beitrag anzeigen
Ich denke nicht das hier SQL Mittel existieren, selbst mit Subqueries wäre das extrem umständlich.
Ich auch nicht, das einzige was du machen könntest ist mit einem JOIN zu arbeiten (glaub RIGHT JOIN), dann hättest du aber nicht das Array, was du dir wünscht - das müsstest du Dir noch zusammenbasteln (z.B. in PHP).
__________________
http://www.ChrisDiary.De
Chr!s ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 13.03.2007, 12:38 Nach oben    #4
Bastian Fenske
 
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 826
Standard

Danke. Ich dachte mir das schon. Habs jetzt "PHP-seitig" umgesetzt.

Basti
Basti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:28 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44