私はこの3つのテーブルをMySQLに入れました。1行でMySQLからの情報を整列する
アーティスト名の表 この場合、画像のアドレス(p) IDの製品とIDのテーブル。 (pmx)
私は一緒に参加しようとしていますので、各アーティストごとに1つの行が表示されます。 p 1人のアーティストのためにいくつかのイメージがあります。私はmf_priorという列を追加しました。ここでは画像の数があります(ユーザーは自分自身に番号を割り当て、フロントエンドで表示したい3つの画像を選択します)。私は、アーティストたち(メーカー)を手紙で探しています。 "M" は
アイデアは私が
- MANUFACTURER_IDを取得したいのですがということです| mf_name | img1_id | img1_address | img2_id | img2_address | img3_id | img3_address
私は
- manufacturer_id1を取得しています| mf_name1 | img1_id | img1_address | NULL | NULL | NULL | NULL
- manufacturer_id1 | mf_name1 | NULL | NULL | img2_id | img2_address | NULL | NULL
- manufacturer_id1 | mf_name1 | NULL | MULL | NULL | NULL | img3_id | img3_address
は、私は、このMySQLのSELECTがあります。結果として
SELECT
m.manufacturer_id ,
m.mf_name ,
p1.product_id AS pimg1 ,
p1.product_full_image AS p1 ,
p2.product_id AS pimg2 ,
p2.product_full_image AS p2 ,
p3.product_id AS pimg3 ,
p3.product_full_image AS p3
FROM
jos_vm_product_mf_xref AS pmx
JOIN
jos_vm_manufacturer AS m ON m.manufacturer_id = pmx.manufacturer_id
JOIN
jos_vm_product AS p1 ON p1.product_id = pmx.product_id AND p1.mf_prior = 1
JOIN
jos_vm_product AS p2 ON p2.product_id = pmx.product_id AND p2.mf_prior = 2
JOIN
jos_vm_product AS p3 ON p3.product_id = pmx.product_id AND p3.mf_prior = 3
WHERE
m.mf_chars = 'm'
を私は3行を取得し、場所で、私はNULLを取得する -
上に示したように多分誰もがこの1で私を助けることができます - より良いSELECTを書くか、結果をPHPで返す
最後に 'GROUP BY m.manufacturer_id'を追加してみてください。 –
ええ、私はそれを試しましたが、実際に正しいのは緑色でマークされた私の答えです:) – mrGott