Sql 在每个产品翻译表中搜索产品名称?
假设我有产品表(ID,Name)、语言(ID,Code)和产品翻译表(ID,ProductID,LanguageID,Name),现在假设我有10-20种语言。我需要在每个语言翻译表中搜索产品名称,并只选择与名称匹配的名称Sql 在每个产品翻译表中搜索产品名称?,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,假设我有产品表(ID,Name)、语言(ID,Code)和产品翻译表(ID,ProductID,LanguageID,Name),现在假设我有10-20种语言。我需要在每个语言翻译表中搜索产品名称,并只选择与名称匹配的名称 SELECT Name, L.ID FROM Product P, ProductTranslation PT, Language L WHERE P.ID = PT.ProductID
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.如果没有可用的语言,名称将包括默认值我认为您只需要查看产品翻译表中的名称字段。但是,您应该使用标准联接语法,并且不需要语言表:
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%'
您的搜索字符串是什么?@RavindraGullapalli search可以是任何语言。英文/法文/阿拉伯文。产品表包括默认表