我想把varchar型的“123456”转换成int型的123456 在postgres 如何转换?

解决方案 »

  1.   

    select '123456'::int 
     也可以,执行结果
        int4
        integer
    1   123456版主的方法执行结果如下
    select to_number('123456','9')    to_number
        numeric
    1   1还没看文档
      

  2.   

    应使用to_number('123456', '999999')当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
    http://topic.csdn.net/u/20100428/09/BC9E0908-F250-42A6-8765-B50A82FE186A.html
    http://topic.csdn.net/u/20100626/09/f35a4763-4b59-49c3-8061-d48fdbc29561.html8、如何给分和结贴?
    http://community.csdn.net/Help/HelpCenter.htm#结帖
      

  3.   

    8.2.3的帮助里是这么写的,
    1.to_number(text, text) numeric 把字符串转换成数字 to_number('12,454.8-', '99G999D9S')2.:: 左 PostgreSQL 特有的类型转换操作符
      :: 语法是 PostgreSQL 历史用法3.再看看PostgreSQL的数据类型
    表8-2. 数值类型名字 存储空间 描述 范围
    smallint 2 字节 小范围整数 -32768 到 +32767
    integer 4 字节 常用的整数 -2147483648 到 +2147483647
    bigint 8 字节 大范围的整数 -9223372036854775808 到 9223372036854775807
    decimal 变长 用户声明精度,精确 无限制
    numeric 变长 用户声明精度,精确 无限制
    real 4 字节 变精度,不精确 6 位十进制数字精度
    double precision 8 字节 变精度,不精确 15 位十进制数字精度
    serial 4 字节 自增整数 1 到 2147483647
    bigserial 8 字节 大范围的自增整数 1 到 9223372036854775807
    integer int, int4 有符号 4 字节整数
      

  4.   

    select '123456'::int  曾经看过这个,不知道是什么,学习了!