Thomas24: Geschwindigkeit: explode vs. MySQL

Beitrag lesen

Hi!

Ich möchte mein meine Frage in folgendes (erfundenes) Bsp. packen, da es sonst zu kompliziert zu erklären wäre:
Ich will einen Onlineshop programmiern, bei dem der Admin pro Produkt beliebig viele Optionen mit beliebig vielen Auswahlmöglichkeiten erstellen kann.
z.B.
Produkt Auto:
Option Farbe: rot, blau, grün
Option PS: 100, 120, 200

Ist es nun sinnvoller das ganze in 2 tables zu speichern alla:

id | product | ...
-------------------
  1 | Auto    | ...

id | product_id | option | optionvalue
---------------------------------------
  1 |          1 | Farbe  | rot
  2 |          1 | Farbe  | blau
  3 |          1 | Farbe  | grün
  4 |          1 | PS     | 100
...

oder in einer Tabelle z.B. nach folgendem Patter: option:option1|option2;

id | product | options
-----------------------
  1 | Auto    | Farbe:rot|bla|grün;PS:|100|120|200

$result = mysql_fetch_array(...);
$split_options = explode(";", $result);
$options = array();
foreach($split_options as $option) {
  $option = explode(":", $option);
  $options[$option[0]] = explode("|", $option[1]);
}

Vielen Dank
Thomas