Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 New to SQL Server Programming
 CAST problem

Author  Topic 

pazzy11
Posting Yak Master

145 Posts

Posted - 2008-01-10 : 09:13:20
I have a problem with CASTING

I have a CASE stmt, i check a var that is an int in the db, but based on values i wanna display strings.

so
[CODE]
CASE var1
WHEN var1 = 51 THEN 'Level 1'
WHEN var1 = 52 THEN 'Level 2'
ELSE var1
END as x
[/CODE]

This gives me Conversion failed when converting the varchar value 'Level 1' to data type int.

Fair enough
but when i try to cast it it still gives me the same error ?
[CODE]
CASE CAST(var1 as varchar(10))
WHEN var1 = 51 THEN 'Level 1'
WHEN var1 = 52 THEN 'Level 2'
ELSE var1
END as x

[/CODE]

harsh_athalye
Master Smack Fu Yak Hacker

5581 Posts

Posted - 2008-01-10 : 09:15:58
quote:
Originally posted by pazzy11

I have a problem with CASTING

I have a CASE stmt, i check a var that is an int in the db, but based on values i wanna display strings.

so
[CODE]
CASE var1
WHEN var1 = 51 THEN 'Level 1'
WHEN var1 = 52 THEN 'Level 2'
ELSE var1
END as x
[/CODE]

This gives me Conversion failed when converting the varchar value 'Level 1' to data type int.

Fair enough
but when i try to cast it it still gives me the same error ?
[CODE]
CASE
WHEN var1 = 51 THEN 'Level 1'
WHEN var1 = 52 THEN 'Level 2'
ELSE CAST(var1 as varchar(10))
END as x

[/CODE]



Edit: Thanks Madhi.

Harsh Athalye
India.
"The IMPOSSIBLE is often UNTRIED"
Go to Top of Page

madhivanan
Premature Yak Congratulator

22864 Posts

Posted - 2008-01-10 : 09:41:47
or


CASE
WHEN var1 = 51 THEN 'Level 1'
WHEN var1 = 52 THEN 'Level 2'
ELSE CAST(var1 as varchar(10))
END as x



Madhivanan

Failing to plan is Planning to fail
Go to Top of Page
   

- Advertisement -