1

私は、ユーザーが送信した値に指定されたTVセットを持つすべてのドキュメントを検索するModXのスニペットの作成に取り組んでいます。

これが私が使っているテーブルの説明です。 http://wiki.modxcms.com/index.php/Template_Variable_Database_Tables

これが私の質問です:

SELECT contentid 
FROM prefix_site_tmplvar_contentvalues
JOIN prefix_site_tmplvar_contentvalues
ON prefix_site_tmplvars.id = prefix_site_tmplvar_contentvalues.tmplvarid
WHERE value="Red"

現在、次のような結果が得られています:http: //pastebin.com/mEJ1w2be

各ドキュメントIDには、各テンプレート変数の結果に新しい行があります。したがって、この例の7455の場合、color = "red"の配列が1つ、material = "wood"の配列が1つ、size="small"の配列が1つあります。それで、赤くて小さくて木でできている製品を見つけたいと思うと、それは難しくなります。

これらのテーブルを結合して、ドキュメントIDと関連する値を持つテンプレート変数のセットを使用して製品ごとに1つの行を取得できるようにする方法はありますか?すべてが分割されているわけではありませんか?

4

1 に答える 1

1

試す

GROUP BY contentid

これにより、同じcontentidを持つすべての行が一緒にスマッシュされます。

于 2012-08-06T19:48:16.210 に答える