MySQLレポートを取得しようとしていますが、何も取得しようとしていません。何が間違っているかを指摘してください。私はこの同様のquestionを確認したが、私の問題に解決策を見つけることができません。MySQL自分自身にテーブルを結合
TABLEは、データモデルは、私には恐ろしい見えること
+----+-----+----------+---------+-----------+-----------+ | pk | ind | opt_type | name | opt_type1 | opt_type2 | +----+-----+----------+---------+-----------+-----------+ | 1 | 1 | group_1 | Green | - | - | | 2 | 1 | group_1 | Red | - | - | | 3 | 1 | group_2 | Cloth | - | - | | 4 | 1 | group_3 | Shirt | 1 | 3 | | 5 | 1 | group_4 | Table | 2 | - | +----+-----+----------+---------+-----------+-----------+
必要な出力
name | colour | material ------+--------+--------- Shirt | Green | Cloth Table | Red |
QUERY & CODE
SELECT
o.name
, o1.name as colour
, o2.name as material
FROM $options as o
LEFT JOIN $options AS o1 ON o1.opt_type1 = o.pk
LEFT JOIN $options AS o2 ON o2.opt_type2 = o.pk
WHERE o.ind=$ind
AND o1.ind=$ind
AND o2.ind=$ind
LOOP{
echo $name ." ". $colour ." ". $material;
}
「$ options」と「$ ind」を実際の値に置き換えて最後のクエリを表示してください。 –
$ optionsには何か – JYoThI
'GROUP_CONCAT' [link](https://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html#function_group-concat)を使って見てください – Ryan