7

我正在使用RODBCORACLE DATA BASE (DB) 中的包。一切都做得很好,但我需要从这个数据库中获取一个表和一些变量作为字符类型,而不是数字。

所以,我这样查询:

e    ManzResul_VIII<-sqlQuery(con,"select distinct t.fono_id_dis,
            t.id_predio,
            t.co_calle,
            t.nu_casa,
            t.x,
            t.y,
            t.plancheta  from c_araya.proy_dist08_todo t  where nvl(t.fono_tipo_dis, '-') not in ('CLIENTE', 'POTENCIAL', 'CARTERA')  and nvl(t.x, 0) <> 0 ")

无法将 ID 号作为 Character 获取,此查询将我的 iDs 变量的类型从 Character 类型更改为 Numeric 类型(ID 开头是零,但已将其更改为数字)。我已经阅读了功能描述,但我可以看到如何管理它。

任何想法将不胜感激,在此先感谢!

4

2 回答 2

2

更改查询以将 id 转换为所需的数据类型:

select distinct cast(t.fono_id_dis as varchar(255)) as id
. . . 

这应该适用于大多数数据库。

于 2012-05-30T20:57:46.293 回答
1

这对我有用:

library(RODBC)
con <- odbcDriverConnect('driver={SQL Server};server=[your server name];database=[your database name];trusted_connection=true')
ManzResul_VIII<-sqlQuery(con,"select distinct ('m' + id) as id from [your table]")
于 2016-09-28T17:59:16.780 回答