2013-07-25 2 views
0

Я пытаюсь фильтровать запрос следующим образом:SQL не может преобразовать типы, но почему

declare @CubeYear as varchar(30) 
--Setting it this way so it can later be easily used in SSAS Cubes 
set @CubeYear = '[Date].[Year].&[2013]' 
SELECT [RankingID] 
     ,[Year] 
     ,[Customer] 
     ,[Rank] 
FROM [OBase].[dbo].[fact_KundeRanking] 
where '[Date].[Year].&[' + Year + ']' = @CubeYear 

, но я получаю следующее сообщение об ошибке:

Conversion failed when converting the varchar value '[Date].[Year].&[2013]' to data type int.

Кто-нибудь знает, что решение это может быть?

+0

обращенного (VARCHAR (30), '[Дата] [год] &. [' + Год + ']') может быть? – tkendrick20

ответ

1

Попробуйте -

where '[Date].[Year].&[' + CAST(Year as varchar(4)) + ']' = @CubeYear 
Смежные вопросы