SQL Query syntax to CASE

Aleks
Aleks used Ask the Experts™
on
I have code that updates a table, but when moving the data the size is larger than what our field allows.
I need to cast the field.

This is my current code, which works if the data was only 20 characters long.

UPDATE a
SET a.I797 = b.Description
from bluedot_eimmigration.dbo.Users a
INNER JOIN [bluedot_eimmigration].[dbo].[zzz_eimmigration_customdocuments] AS b ON b.userid = a.userid 
WHERE b.DocName = 'I-797'

Open in new window


I am trying to make the description 20 characters so that I can update without getting an error

UPDATE a
SET a.I797 = CAST(b.Description AS VARCHAR(20) ) AS Description , 
from bluedot_eimmigration.dbo.Users a
INNER JOIN [bluedot_eimmigration].[dbo].[zzz_eimmigration_customdocuments] AS b ON b.userid = a.userid 
WHERE b.DocName = 'I-797'

Open in new window


But the above gives me a syntax error:

Msg 156, Level 15, State 1, Line 15
Incorrect syntax near the keyword 'AS'.

Open in new window


Your help is appreciated.
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
EE Topic Advisor
Most Valuable Expert 2014
Awarded 2013
Commented:
remove the highlighted part

UPDATE a
SET a.I797 = CAST(b.Description AS VARCHAR(20) )  -- AS Description ,
from bluedot_eimmigration.dbo.Users a
INNER JOIN [bluedot_eimmigration].[dbo].[zzz_eimmigration_customdocuments] AS b ON b.userid = a.userid
WHERE b.DocName = 'I-797'

Author

Commented:
!

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial