1

状況。CS-Cart のオプション・バリエーション表は以下のような構造になっています。

[variant_options]テーブルには[combination]列があります。
[combination]は、[option_id][variant_id]
[option_id]アンダースコア[variant_id ] として 1_2、1_3 として保存します。
正しいオプションとそのバリエーションを各製品に一致させるには、それらの値を参照できる必要があります。つまり、LEFT JOIN variant_name ON variant_name.variantid = (組み合わせ列のアンダースコアの後の値)

。ありがとう

4

1 に答える 1

1
SELECT  *
FROM    combination c
LEFT JOIN
        option o
ON      o.id = SUBSTRING_INDEX(c.combination, '_', 1)
LEFT JOIN
        variant v
ON      v.id = SUBSTRING_INDEX(c.combination, '_', -1)
于 2012-05-25T10:19:45.040 に答える