oracle convert函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle convert函数相关的知识,希望对你有一定的参考价值。

select count(*) num, convert(varchar(7),signTime,120) fil from Project where signTime between '2010-11-11' and '2010-11-15' and signs=2 group by convert(varchar(7),signTime,120)这一段SQL语句在SQL SEVER中可以正常使用 但是到ORACLE就不行了 高手帮帮写下 在ORACLE应该怎么写 主要是convert这个函数怎么用 时间我会转化
这就是一个取signTime这个字段 当前月份的函数 我要根据不同的月份来统计数据

convert()函数是转换字符集的。实在SQL server中使用的。

CONVERT()函数:

对于简单类型转换,CONVERT()函数和CAST()函数的功能相同,只是语法不同。CAST()函数一般更容易使用,其功能也更简单。CONVERT()函数的优点是可以格式化日期和数值,它需要两个参数:第1个是目标数据类型,第2个是源数据。

使用举例:

convert(varchar(7),signTime,120)。

功能:

CONVERT()函数还具有一些改进的功能,它可以返回经过格式化的字符串值,且可以把日期值格式化成很多形式。有28种预定义的符合各种国际和特殊要求的日期与时间输出格式。

参考技术A substr是按字符来计算,一个字母或汉字都按一个字符计算如:
substr('智能abc',2,2)='能a'
如果想要按字节来计算则可以采用substrb函数,用法一样
substrb('智能abc',3,4)='能ab'
当然还有另外几个按不同编码计算的函数
substrc:按unicode编码,
substr2:按ucs2编码,
substr4:按ucs4编码。
参考技术B 呵呵,convert这个函数在ORACLE里面不是做这个使唤的,转换字符集的,
SQLserver里面的
convert(varchar(7),signTime,120)
=
ORACLE里面的
to_char(signTime,'yyyy-mm')本回答被提问者和网友采纳
参考技术C CONVERT(char, dest_char_set[, source_char_set ])

例子
SELECT CONVERT('Ä Ê Í Ó Ø A B C D E ', 'US7ASCII', 'WE8ISO8859P1')
FROM DUAL;

显示结果
CONVERT('ÄÊÍÓØABCDE'
---------------------
A E I ? ? A B C D E ?
参考技术D CONVERT(char, dest_char_set[, source_char_set ])

例子
SELECT CONVERT('Ä Ê Í Ó Ø A B C D E ', 'US7ASCII', 'WE8ISO8859P1')
FROM DUAL;

显示结果
CONVERT('ÄÊÍÓØABCDE'
---------------------
A E I ? ? A B C D E ?

以上是关于oracle convert函数的主要内容,如果未能解决你的问题,请参考以下文章

Oracle数据库中convert()函数,在瀚高数据库中如何替换使用?

Oracle数据库中convert()函数,在瀚高数据库中如何替换使用?

Oracle数据库中convert()函数,在瀚高数据库中如何替换使用?

在SQL中怎么用convert函数把一位数字转换成两位数?

SQL Server函数中 convert(char(10),rq,21)>具体代表啥含义?

MySQL convert函数导致的字符集错误场景