指定した言語に基づいてすべての商品の説明を表示しようとしていますが、その言語の翻訳が見つからない場合は、代わりにデフォルトが使用されます。あなたの助けを大幅に高く評価されるように、私は、日本に取り組んできましたSQLクエリ:商品の説明のリスト
:
このペーストを見てください、すべてが期待される結果と説明されています! langは上で定義されて
指定した言語に基づいてすべての商品の説明を表示しようとしていますが、その言語の翻訳が見つからない場合は、代わりにデフォルトが使用されます。あなたの助けを大幅に高く評価されるように、私は、日本に取り組んできましたSQLクエリ:商品の説明のリスト
:
このペーストを見てください、すべてが期待される結果と説明されています! langは上で定義されて
注
SELECT COALESCE(pd.short_description, t.short_description)
FROM PRODUCT_DESCRIPTIONS t
LEFT JOIN PRODUCT_DESCRIPTIONS pd ON pd.product_id = t.product_id
AND pd.lang = 'mk'
WHERE t.is_default = 1
あなたはWHERE句で言語をフィルタリングする場合、それは動作しません登録しよう。
+1すべてのプロダクトIDに* is_default *というラベルがあると仮定します。それ以外の場合は、デフォルトで左にジョインする(FROM)必要な言語から始めます(WHERE句ではなくJOINの別の条件としてt.is_defaultを指定します)。 – van
@van:あなたは希望の言語が存在しないところでproduct_idsを取得しないので、デフォルト言語のshort_description値を取得しようとすると無駄になります。 –
@dom。私は* rexem *によってSELECTステートメントを受け取り、それに基づいてビューを作成します。次に、SELECTを作成し、必要に応じて製品と言語によるフィルタを追加することができます。 – van
@dom。 ... 'lang'と 'productid'をそのビューの追加列として追加する必要があります – van