如何在vertica数据库中以数字方式命令varchar列?

时间:2011-11-10 04:36:22

标签: varchar vertica

如何在vertica数据库中以数字方式命令varchar列?

例如,我们可以在oracle的order by子句中添加+0,以数字方式对varchar列进行排序。

谢谢!

3 个答案:

答案 0 :(得分:2)

中使用演员表
select x from foo order by cast(x as int);

如果并非所有值都可以转换为int,则会出现错误。

答案 1 :(得分:0)

我以前在Vertica中没有这样做,但我对这类问题的建议是一样的。试着弄清楚PostgreSQL是如何做到这一点并尝试的,因为Vertica正在利用很多PostgreSQL的功能。

我刚刚进行了快速搜索,并提出了一个可能的解决方案:http://archives.postgresql.org/pgsql-general/2002-01/msg01057.php

更彻底的搜索可以为您提供更好的答案。

答案 2 :(得分:0)

如果数据是真正的数字数据,'+ 0'将按照您的要求进行转换,但如果有任何无法转换的值,查询将返回如下错误:

  

错误:无法将列表table_name.column_name中的“200 ... something”转换为数字