Hallo Simon,
wie schon gesagt, gibt es meiner Menung nach keine "gute" Lösung, da Du Tabellendaten mit Metadaten (Name der Tabellenspalte) mischen willst.
Lösungsmöglichkeiten:
a) CREATE TEMPORARY TABLE (eventuell mit einem Stored Procedure)
Zuerst die benötigten Spaltennamen ermitteln (hier: Volt, Ampere, Ohm)
Dann eine temporäre Tabelle anlegen mit den gewünschten Tabellennamen
http://dev.mysql.com/doc/refman/5.1/de/create-table.html
CREATE TEMPORARY TABLE mytemptable (
parts_id ..
parts_text ..
Volt ..
Ampere ..
Ohm ..
)
Im nächsten Schritt kommt das Ergebnis der SQL-Abfrage da hinein
INSERT INTO mytemptable
SELECT a1.parts_id, p.text, wert_volt, wert_ampere, wert_ohm
FROM ( SELECT parts_id
FROM att
WHERE val_s = 'blau'
AND attnames_id = 1
) a1
...
Nun kann das komplette Ergebnis abgeholt werden.
SELECT * FROM mytemptable;
Temporäre Tabellen werden nach beenden der MySQL Connection automatisch von MySQL "gedroppt".
b) Lösung im Skript
Die bisherige Abfrage ausführen und bevor die Daten ausgegeben werden mit einem zweiten SQL die Attributnamen dazu holen.
Grüße
Thomas