09-20-2017 04:25 PM
I've seen this posted, but I've never seen a real answer - how do I convert a number to a character in SASVA?
I have a table where the data is loaded with a field as numeric but should really be character. This is a production table and the datatype cannot be changed at the source. It's also a very large table, so I don't want to have to create a staging table in order to do this (this is the only field that I need to change, I don't want to have to update a new table every time this report is ran).
I cannot seem to make a calculated expression work that converts the number to a character. I've tried TreatAs() which didn't work (only treats a numeric as a different numeric type or datetype) and format() isn't recognizing any of the formats I give it (I don't think format converts types though).
What am I missing? Thnks!
3 weeks ago
1. I had a data of 800gb, but the user has loaded it on lasr, and the column trdng_wk_end was having the values in number 20170112.
2. To create a date out of 20170112 kind of numbers follow the following.
2. create a new calculated item. I used the combination of functions.
mdy - outer shell
parse - first inner shell
substr - second inner shell
format - inner most inner shell
DateFromMDY(Parse(Substring(Format('TRDNG_WK_END_DT'n, 'BEST2.'), 5, 2), 'COMMA2.'), Parse(Substring(Format('TRDNG_WK_END_DT'n, 'BEST2.'), 7, 2), 'COMMA2.'),
Parse(Substring(Format('TRDNG_WK_END_DT'n, 'BEST4.'), 1, 4), 'COMMA4.'))