我有下表:
1。表格语言
示例: [EN,英语,1,NL],[NL,荷兰语,1,null],[FR,法语,0,EN]
2。表enumExample
示例: [1,Bla],[2,blabla],[3,blablabla]
3。表enumExampleTranslation
示例: [EN,1,Blo],[NL,1,bloblo]
4。查看:vwExampleView
示例: [EN,1,Blo],[NL,1,bloblo]。 [FR,1,blo]
问题在于视图:
a。因此,为了从语言表中获取语言链,我可以
Declare @TABLEVAR table (id nvarchar(3) ,parentid nvarchar(3))
;with parents as (
select Id, Parentid from Language where Id = 'UK'
union all
select c.Id, c.ParentId from Language c
join parents p on p.ParentId = c.Id
)
INSERT INTO @TABLEVAR
select *
from parents
OPTION (MAXRECURSION 0)
但是现在在视图中,我做了类似的事情,但是没有空值,而是在合并中进行了选择:
Select t1.id, g.EnumExampleId, (select top(1) i.Value from
EnumExampleTranslation i where i.EnumExampleId = g.EnumExampleId )
as Description
FROM @TABLEVAR t1 FULL OUTER JOIN
EnumExampleTranslation g on t1.id = g.LanguageId
我要开始使用的最后一个查询(或视图定义)。但是我很难在其中获取@TABLEVAR值。