这个问题非常基础,但非常感谢您的意见。
我基本上需要添加' 1'在变量的现有值前面(没有空格作为分隔符)。到目前为止,这是我最好的尝试:
proc sql;
create table as select * from connection to oracle
(
select catx('','1',A.Var_Name) AS "#New_Var" from table_name;
)
quit;
答案 0 :(得分:1)
我没有得到你想要的东西。如果您在Oracle中有一个列并希望连接一个值,则可以使用:
proc sql;
select '1' || a.Var_Name
from table_name;
quit;
答案 1 :(得分:0)
SAS没有“空字符串”的概念,所以
select catx('','1',A.Var_Name) AS "#New_Var" from table_name;
与
相同select catx(' ','1',A.Var_Name) AS "#New_Var" from table_name;
然而, CATS
会删除空格;或CATT
如果您只想删除尾随空格。
select cats('1',A.Var_Name) AS New_Var from table_name;
如果你需要比这更复杂的东西(比如A.Var_Name
有你要保留的尾随空格)那么你需要自己完成工作来修剪空格然后使用连接运算符连接,就像戈登提到了。
另请注意,如果您在SAS
中执行此操作,而不是传递,则需要使用上述语法作为列名,而不是"#
样式。