码迷,mamicode.com
首页 > 数据库 > 详细

SQL Fundamentals || Single-Row Functions || 转换函数 Conversion function

时间:2017-07-24 19:06:14      阅读:326      评论:0      收藏:0      [点我收藏+]

标签:微软   字符串   数据类型   ddd   描述   方法   timestamp   microsoft   一周   

 

数据库中主要使用的数据类型:字符,数字,日期(时间戳)

日期、字符、数字之间可以完成互相转换功能;

函数名称

描述

TO_CHAR(日期 | 数字 | 列,转换格式)

    • 将指定的数据按照指定的格式变为字符串
    • 格式化当前的日期时间

    SQL> SELECT SYSDATE,TO_CHAR(SYSDATE,‘YY-MM-DD HH24:MI:SS‘) FROM DUAL;

     

    SYSDATE            TO_CHAR(SYSDATE,‘

    ------------------ -----------------

    24-JUL-17          17-07-24 17:15:53

     

    SELECT SYSDATE 当前系统时间 ,TO_CHAR(SYSDATE,‘YYYY-MM-DD‘) 格式化日期 ,

     TO_CHAR(SYSDATE,‘YYYY-MM-DD HH24:MI:SS‘) 格式化日期时间 ,

    TO_CHAR(SYSDATE,‘FMYYYY-MM-DD HH24:MI:SS‘) 去掉前导0的日期时间

    FROM dual ;

    使用FM可以取消前导0,但不建议去掉.

    • 使用其他方法格式化年、月、日

    SELECT SYSDATE ,TO_CHAR(SYSDATE,‘YEAR-MONTH-DY‘)

    FROM dual ;

    • 查询出所有在每年2月份雇佣的雇员信息

    SELECT * FROM emp WHERE TO_CHAR(hiredate,‘MM‘)=‘02‘ ;

    SELECT * FROM emp WHERE TO_CHAR(hiredate,‘MM‘)=2 ;

    • 将每个雇员的雇佣日期进行格式化显示,要求所有的雇佣日期可以按照“年--日”的形式显示,也可以将雇佣的年、月、日拆开分别显示

    SELECT   empno,ename,job,hiredate,

    TO_CHAR(hiredate,‘YYYY-MM-DD‘) 格式化雇佣日期, TO_CHAR(hiredate,‘YYYY‘) ,

    TO_CHAR(hiredate,‘MM‘) ,TO_CHAR(hiredate,‘DD‘)

    FROM emp ;

    • 使用英文的日期格式表示出每个雇员的雇佣日期

    SELECT empno ,ename , hiredate ,TO_CHAR(hiredate,‘YEAR-MONTH-DY‘) FROM emp ;

TO_DATE(字符串 | 列,转换格式)

将指定字符串按照指定的格式变为DATE

SELECT TO_DATE(‘1979-09-19‘,‘YYYY-MM-DD‘) FROM dual ;

TO_NUMBER(字符串 | 列)

    • 将指定的数据类型变为数字

    1、格式化数字:

    • 格式化数字显示

    SELECT TO_CHAR(987654321.789,‘999,999,999,999.99999‘) 格式化数字 ,

    TO_CHAR(987654321.789,‘000,000,000,000.00000‘) 格式化数字

    FROM dual ;

    • 格式化货币显示

    SELECT TO_CHAR(987654321.789,‘L999,999,999,999.99999‘) 显示货币 ,

    TO_CHAR(987654321.789,‘$999,999,999,999.99999‘) 显示美元

    FROM dual ;

    2字符串变为数字.

    • 使用TO_NUMBER()函数将字符串变为数字

    SELECT TO_NUMBER(‘09‘) + TO_NUMBER(‘19‘) 加法计算 ,

    TO_NUMBER(‘09‘) * TO_NUMBER(‘19‘) 乘法计算

    FROM dual ;

    • 不利用TO_NUMBER()函数字符串也可以自动变为数字

    SELECT ‘09‘ + ‘19‘ 加法计算 , ‘09‘ * ‘19‘ 乘法计算 FROM dual ;

TO_TIMESTAMP

    • 使用TO_TIMESTAMP()函数

    SELECT    TO_TIMESTAMP(‘1981-09-27 18:07:10‘,‘YYYY-MM-DD HH24:MI:SS‘) datetime

    FROM dual ;

 

日期格式化标记:

转换格式

描述

YYYY

完整的年份数字表示,年有四位,所以使用四个Y

Y,YYY

带逗号的年

YYY

年的后三位

YY

年的后两位

Y

年的最后一位

YEAR

年份的文字表示,直接表示四位的年

MONTH

月份的文字表示,直接表示两位的月

MM

用两位数字来表示月份,月有两位,所以使用两个M

DAY

天数的文字表示

DDD

表示一年里的天数(001 ~ 366)

DD

表示一月里的天数(01 ~ 31)

D

表示一周里的天数(1 ~ 7)

DY

用文字表示星期几

WW

表示一年里的周数

W

表示一月里的周数

HH

表示12小时制,小时是两位数字,使用两个H

HH24

表示24小时制

MI

表示分钟

SS

表示秒,秒是两位数字,使用两个S

SSSSS

午夜之后的秒数字表示(0 ~ 86399)

AM | PM(A.M. | P.M.

表示上午或下午

FM

去掉查询后的前导0,该标记用于时间模板的后缀

数字格式化标识:

转换格式

描述

9

表示一位数字

0

显示前导0

$

将货币的符号显示为美圆符号

L

根据语言环境不同,自动选择货币符号

.

显示小数点

,

显示千位符

 

 

SQL Fundamentals || Single-Row Functions || 转换函数 Conversion function

标签:微软   字符串   数据类型   ddd   描述   方法   timestamp   microsoft   一周   

原文地址:http://www.cnblogs.com/thescentedpath/p/Conversionfunction.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!