0

Product Table(ID,Name)、Language(ID, Code)、および ProductTranslation テーブル(ID, ProductID, LanguageID, Name) があるとします。10 ~ 20 の言語があるとします。各言語翻訳テーブルで製品名を検索し、名前に一致する名前のみを選択する必要があります。

 SELECT Name, 
        L.ID 
  FROM  Product P, 
        ProductTranslation PT, 
        Language L
  WHERE P.ID = PT.ProductID  
        AND PT.LanguageID = L.ID
        AND P.Name LIKE '%A%'+' ?????

編集:言語が利用できない場合、P.Nameにデフォルト値が含まれることに注意してください

4

1 に答える 1

0

製品翻訳テーブルの名前フィールドを確認するだけでよいと思います。ただし、標準の結合構文を使用する必要があり、言語テーブルは必要ありません。

select pt.name as NameInLanguage, pt.id, p.name as ProductName
from ProductTransalation pt join
     Product p
     on pt.productId = p.productId
where pt.name like '%A%'
于 2013-03-19T13:49:12.687 に答える