PLSQL中SQL语句怎样转换日期型函数为字符型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PLSQL中SQL语句怎样转换日期型函数为字符型?相关的知识,希望对你有一定的参考价值。

目前需求:需要selcet where ENDDATE<'2014/01/01'
其中:ENDDATE是一个日期的字段名,而后面的2014/01/01是我要转换的日期,目前查到在数据中ENDDATE的属性如图所示:

在数据库中查的ENDDATE的显示数据如图所示:

紧急求助,谢!!
需要知道使用什么函数,可以将后面的20140101转换,或者将掐面的日期转换成字符串的形式都可以吧?试过很多函数,都不能用。

to_char函数可以将日期值格式化为字符串; to_date函数将字符串按指定格式转换成日期值。
在查询中, 将'2014/01/01'转换成日期值,然后再用作查询条件,这样会比较好。
select ... where enddate < to_date('2014/01/01', 'yyyy/mm/dd')
参考技术A select * from table t where to_char(t.ENDDATE,'yyyy/mm/dd')<'2014/01/01
其中,to_char是将日期转化成字符串的函数;yyyy/mm/dd是指定的日期格式。
参考技术B where to_char(ENDDATE,'yyyy/mm/dd')<'2014/01/01'

这样试试

参考技术C to_char(ENDDATE,'yyyy/mm/dd')

sql 语句NVL()用法

一NVL函数是一个空值转换函数

NVL(表达式1,表达式2)

如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。 该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型。

对数字型: NVL( comm,0);

对字符型 NVL( TO_CHAR(comm), ‘No Commission‘)

对日期型 NVL(hiredate,‘ 31-DEC-99‘)

例子:

select   ename,NVL(TO_char(comm), ename||‘ is not a salesperson!‘) AS COMMISSION

from emp

二 NVL2(表达式1,表达式2,表达式3)

如果表达式1为空,返回值为表达式3的值。如果表达式1不为空,返回值为表达式2的值。

例如 NVL2(comm,‘sal+comm‘,sal)

NVL2函数测试comm

如果comm为空,就返回sal 的值。如果 comm 不为空(null),就返回表达式 sal+comm的值。



























以上是关于PLSQL中SQL语句怎样转换日期型函数为字符型?的主要内容,如果未能解决你的问题,请参考以下文章

在SQL中怎样把字符型的数据转换成日期型的呢

sql 语句 ,怎么将字符型转换为数字型(整型,浮点型)都行,用啥函数 在线等

sql 中怎样让日期转变成字符串

SQL语句---nvl 用法

sql 语句NVL()用法

sql字符串转换日期