Date_format(col,pattern)
col为需要格式化的字段,pattern为转换的格式,格式参照总的格式表
其中最常用的xxxx-xx-xx xx:xx:xx的格式根据格式表,需要写为:
%Y-%m-%d %H:%i:%s,也就是:
DATE_FORMAT(xxx,'%Y-%m-%d %H:%i:%s')
2.varchar类型转换为date类型
使用str_to_date函数进行转换,使用方式为
Str_to_date(col.pattern),其中col为需要格式化的字段或内容,pattern的格式参照格式表,用法和date转varchar其实是类似的。
附:格式表(转)
|
值
|
含义
|
秒
|
%S、%s
|
两位数字形式的秒( 00,01, ..., 59)
|
分
|
%i
|
两位数字形式的分( 00,01, ..., 59)
|
小时
|
%H
|
24小时制,两位数形式小时(00,01, ...,23)
|
|
%h
|
12小时制,两位数形式小时(00,01, ...,12)
|
|
%k
|
24小时制,数形式小时(0,1, ...,23)
|
|
%l
|
12小时制,数形式小时(0,1, ...,12)
|
|
%T
|
24小时制,时间形式(HH:mm:ss)
|
|
%r
|
12小时制,时间形式(hh:mm:ss AM 或 PM)
|
|
%p
|
AM上午或PM下午
|
周
|
%W
|
一周中每一天的名称(Sunday,Monday, ...,Saturday)
|
|
%a
|
一周中每一天名称的缩写(Sun,Mon, ...,Sat)
|
|
%w
|
以数字形式标识周(0=Sunday,1=Monday, ...,6=Saturday)
|
|
%U
|
数字表示周数,星期天为周中第一天
|
|
%u
|
数字表示周数,星期一为周中第一天
|
天
|
%d
|
两位数字表示月中天数(01,02, ...,31)
|
|
%e
|
数字表示月中天数(1,2, ...,31)
|
|
%D
|
英文后缀表示月中天数(1st,2nd,3rd ...)
|
|
%j
|
以三位数字表示年中天数(001,002, ...,366)
|
月
|
%M
|
英文月名(January,February, ...,December)
|
|
%b
|
英文缩写月名(Jan,Feb, ...,Dec)
|
|
%m
|
两位数字表示月份(01,02, ...,12)
|
|
%c
|
数字表示月份(1,2, ...,12)
|
年
|
%Y
|
四位数字表示的年份(2015,2016...)
|
|
%y
|
两位数字表示的年份(15,16...)
|
文字输出
|
%文字
|
直接输出文字内容
|
1.date类型装换为varchar类型使用date_format函数进行转换,使用方式为Date_format(col,pattern)col为需要格式化的字段,pattern为转换的格式,格式参照总的格式表其中最常用的xxxx-xx-xx xx:xx:xx的格式根据格式表,需要写为:%Y-%m-%d %H:%i:%s,也就是: DATE_FORMAT(xxx,'%Y...
先使用str_to_
date
函数,将其
varchar
类型转为日期类型,然后从小到大排序
语法:select str_to_
date
(class_time,’%Y%m%d %H:%i:%s’) a from a order by a desc ;
下面接着看下oracle中
varchar
类型的日期格式
转换
date
类型
oracle中
varchar
类型的日期格式
转换
date
类型
SELECT to_char(to_
date
(m.ma_
date
time,'yyyy-MM-dd hh24:mi:ss'),
'yyyyMMdd') FROM my_task m;
m.ma_
date
t
20.2.4. SHOW CREATE PROCEDURE和SHOW CREATE FUNCTION
20.2.5. SHOW PROCEDURE STATUS和SHOW FUNCTION STATUS
20.2.6. CALL语句
20.2.7. BEGIN ... END复合语句
20.2.8. DECLARE语句
20.2.9. 存储程序中的变量
20.2.10. 条件和处理程序
20.2.11. 光标
20.2.12. 流程控制构造
20.3. 存储程序、函数、触发程序和复制:常见问题
20.4. 存储子程序和触发程序的二进制日志功能
21. 触发程序
21.1. CREATE TRIGGER语法
21.2. DROP TRIGGER语法
21.3. 使用触发程序
22. 视图
22.1. ALTER VIEW语法
22.2. CREATE VIEW语法
22.3. DROP VIEW语法
22.4. SHOW CREATE VIEW语法
23. INFORMATION_SCHEMA信息数据库
23.1. INFORMATION_SCHEMA表
23.1.1. INFORMATION_SCHEMA SCHEMATA表
23.1.2. INFORMATION_SCHEMA TABLES表
23.1.3. INFORMATION_SCHEMA COLUMNS表
23.1.4. INFORMATION_SCHEMA STATISTICS表
23.1.5. INFORMATION_SCHEMA USER_PRIVILEGES表
23.1.6. INFORMATION_SCHEMA SCHEMA_PRIVILEGES表
23.1.7. INFORMATION_SCHEMA TABLE_PRIVILEGES表
23.1.8. INFORMATION_SCHEMA COLUMN_PRIVILEGES表
23.1.9. INFORMATION_SCHEMA CHARACTER_SETS表
23.1.10. INFORMATION_SCHEMA COLLATIONS表
23.1.11. INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY表
23.1.12. INFORMATION_SCHEMA TABLE_CONSTRAINTS表
23.1.13. INFORMATION_SCHEMA KEY_COLUMN_USAGE表
23.1.14. INFORMATION_SCHEMA ROUTINES表
23.1.15. INFORMATION_SCHEMA VIEWS表
23.1.16. INFORMATION_SCHEMA TRIGGERS表
23.1.17. 其他INFORMATION_SCHEMA表
23.2. SHOW语句的扩展
24. 精度数学
24.1. 数值的类型
24.2. DECIMAL数据类型更改
24.3. 表达式处理
24.4. 四舍五入
24.5. 精度数学示例
25. API和库
25.1. lib
mysql
d,嵌入式
MySQL
服务器库
25.1.1. 嵌入式
MySQL
服务器库概述
25.1.2. 使用lib
mysql
d编译程序
25.1.3. 使用嵌入式
MySQL
服务器时的限制
25.1.4. 与嵌入式服务器一起使用的选项
25.1.5. 嵌入式服务器中尚需完成的事项(TODO)
25.1.6. 嵌入式服务器示例
25.1.7. 嵌入式服务器的许可
25.2.
MySQL
C API
25.2.1. C API数据类型
25.2.2. C API函数概述
25.2.3. C API函数描述
25.2.4. C API预处理语句
25.2.5. C API预处理语句的数据类型
25.2.6. C API预处理语句函数概述
25.2.7. C API预处理语句函数描述
25.2.8. C API预处理语句方面的问题
25.2.9. 多查询执行的C API处理
25.2.10. 日期和时间值的C API处理
25.2.11. C API线程函数介绍
25.2.12. C API嵌入式服务器函数介绍
25.2.13. 使用C API时的常见问题
25.2.14. 创建客户端程序
25.2.15. 如何生成线程式客户端
25.3.
MySQL
PHP API
25.3.1. 使用
MySQL
和PHP的常见问题
25.4.
MySQL
Perl API
25.5.
MySQL
C++ API
25.5.1. Borland C++
25.6.
MySQL
Python API
25.7.
MySQL
Tcl API
25.8.
MySQL
Eiffel Wrapper
25.9.
MySQL
程序开发实用工具
25.9.1. msql2
mysql
:
转换
mSQL程序以用于
MySQL
25.9.2.
mysql
_config:获取编译客户端的编译选项
26. 连接器
26.1.
MySQL
Connector/ODBC
26.1.1. MyODBC介绍
26.1.2. 关于ODBC和MyODBC的一般信息
26.1.3. 如何安装MyODBC
26.1.4. 在Windows平台上从二进制版本安装MyODBC
26.1.5. I在Unix平台上从二进制版本安装MyODBC
26.1.6. 在Windows平台上从源码版本安装MyODBC
26.1.7. 在Unix平台上从源码版本安装MyODBC
26.1.8. 从BitKeeper开发源码树安装MyODBC
26.1.9. MyODBC配置
26.1.10. 与MyODBC连接相关的事宜
26.1.11. MyODBC和Microsoft Access
26.1.12. MyODBC和Microsoft VBA及ASP
26.1.13. MyODBC和第三方ODBC工具
26.1.14. MyODBC通用功能
26.1.15. 基本的MyODBC应用步骤
26.1.16. MyODBC API引用
26.1.17. MyODBC数据类型
26.1.18. MyODBC错误代码
26.1.19. MyODBC与VB:ADO、DAO和RDO
26.1.20. MyODBC与Microsoft.NET
26.1.21. 感谢
26.2.
MySQL
Connector/NET
26.2.1. 前言
26.2.2. 下载并安装
MySQL
Connector/NET
26.2.3. Connector/NET体系结构
26.2.4. 使用
MySQL
Connector/NET
26.2.5.
MySQL
Connector/NET变更史
26.3.
MySQL
Connector/J
26.3.1. 基本的JDBC概念
26.3.2. 安装 Connector/J
26.3.3. JDBC引用
26.3.4. 与J2EE和其他Java框架一起使用 Connector/J
26.3.5. 诊断 Connector/J方面的问题
26.3.6. Changelog
26.4.
MySQL
Connector/MXJ
26.4.1. 前言
26.4.2. 支持平台:
26.4.3. Junit测试要求
26.4.4. 运行Junit测试
26.4.5. 作为JDBC驱动程序的一部分运行
26.4.6. 在Java对象中运行
26.4.7.
Mysql
dResource API
26.4.8. 在JMX代理(custom)中运行
26.4.9. 部署在标准的JMX代理环境下 (JBoss)
26.4.10. 安装
27. 扩展
MySQL
27.1.
MySQL
内部控件
27.1.1.
MySQL
线程
27.1.2.
MySQL
测试套件
27.2. 为
MySQL
添加新函数
27.2.1. 自定义函数接口的特性
27.2.2. CREATE FUNCTION/DROP FUNCTION语法
27.2.3. 添加新的自定义函数
27.2.4. 添加新的固有函数
27.3. 为
MySQL
添加新步骤
27.3.1. 步骤分析
27.3.2. 编写步骤
A. 问题和常见错误
A.1. 如何确定导致问题的原因
A.2. 使用
MySQL
程序时的常见错误
A.2.1. 拒绝访问
A.2.2. 无法连接到[local]
MySQL
服务器
A.2.3. 客户端不支持鉴定协议
A.2.4. 输入密码时出现密码错误
A.2.5. 主机的host_name被屏蔽
A.2.6. 连接数过多
A.2.7. 内存溢出
A.2.8.
MySQL
服务器不可用
A.2.9. 信息包过大
A.2.10. 通信错误和失效连接
A.2.11. 表已满
A.2.12. 无法创建文件/写入文件
A.2.13. 命令不同步
A.2.14. 忽略用户
A.2.15. 表tbl_name不存在
A.2.16. 无法初始化字符集
A.2.17. 文件未找到
A.3. 与安装有关的事宜
A.3.1. 与
MySQL
客户端库的链接问题
A.3.2. 如何以普通用户身份运行
MySQL
A.3.3. 与文件许可有关的问题
A.4. 与管理有关的事宜
A.4.1. 如何复位根用户密码
A.4.2. 如果
MySQL
依然崩溃,应作些什么
A.4.3.
MySQL
处理磁盘满的方式
A.4.4.
MySQL
将临时文件储存在哪里
A.4.5. 如何保护或更改
MySQL
套接字文件/tmp/
mysql
.sock
A.4.6. 时区问题
A.5. 与查询有关的事宜
A.5.1. 搜索中的大小写敏感性
A.5.2. 使用
DATE
列方面的问题
A.5.3. 与NULL值有关的问题
A.5.4. 与列别名有关的问题
A.5.5. 非事务表回滚失败
A.5.6. 从相关表删除行
A.5.7. 解决与不匹配行有关的问题
A.5.8. 与浮点比较有关的问题
A.6. 与优化器有关的事宜
A.7. 与表定义有关的事宜
A.7.1. 与ALTER TABLE有关的问题
A.7.2. 如何更改表中的列顺序
A.7.3. TEMPORARY TABLE问题
A.8.
MySQL
中的已知事宜
A.8.1.
MySQL
中的打开事宜
B. 错误代码和消息
B.1. 服务器错误代码和消息
B.2. 客户端错误代码和消息
C. 感谢
C.1.
MySQL
AB处的开发人
C.2.
MySQL
贡献人
C.3. 资料员和译员
C.4.
MySQL
使用和包含的库
C.5. 支持
MySQL
的软件包
C.6. 用于创建
MySQL
的工具
C.7.
MySQL
支持人员
D.
MySQL
变更史
D.1. 5.1.x版中的变更情况(开发)
D.1.1. 5.1.2版中的变更情况(尚未发布)
D.1.2. 5.1.1版中的变更情况(尚未发布)
D.2. MyODBC的变更情况
D.2.1. MyODBC 3.51.12的变更情况
D.2.2. MyODBC 3.51.11的变更情况
E. 移植到其他系统
E.1. 调试
MySQL
服务器
E.1.1. 针对调试编译
MySQL
E.1.2. 创建跟踪文件
E.1.3. 在gdb环境下调试
mysql
d
E.1.4. 使用堆栈跟踪
E.1.5. 使用日志文件找出
mysql
d中的错误原因
E.1.6. 如果出现表崩溃,请生成测试案例
E.2. 调试
MySQL
客户端
E.3. DBUG软件包
E.4. 关于RTS线程的注释
E.5. 线程软件包之间的差异
F. 环境变量
G.
MySQL
正则表达式
H.
MySQL
中的限制
H.1. 联合的限制
I. 特性限制
I.1. 对存储子程序和触发程序的限制
I.2. 对服务器端光标的限制
I.3. 对子查询的限制
I.4. 对视图的限制
I.5. 对XA事务的限制
J. GNU通用公共许可
K.
MySQL
FLOSS许可例外
14.1.
MySQL
插件式存储引擎的体系结构
14.2. 存储引擎比较
16.1.
MySQL
体系结构
26.1. 连接属性
26.2.
转换
表
26.3. 用于ResultSet.getObject()的
MySQL
类型和Java类型
26.4.
MySQL
对Java编码名称的翻译
26.1. 从DriverManager获得连接
26.2. 使用java.sql.Statement执行SELECT查询
26.3. 存储程序示例
26.4. 使用Connection.prepareCall()
26.5. 注册输出参数
26.6. 设置CallableStatement输入参数
26.7. 检索结果和输出参数值
26.8. 使用Statement.getGeneratedKeys()检索AUTO_INCREMENT列的值
26.9. 使用SELECT LAST_INSERT_ID()检索AUTO_INCREMENT列的值
26.10. 在可更新的ResultSets中检索AUTO_INCREMENT列的值
26.11. 设置Unix环境下的CLASSPATH
26.12. 与J2EE应用服务器一起使用连接池
26.13. 重试逻辑的事务示例
1、将Int 转为
varchar
经常用 concat函数,比如concat(8,’0′) 得到字符串 ’80’ 2、将
varchar
转为Int 用 cast(a as signed) a为
varchar
类型的字符串 总结:类型
转换
和SQL Server一样,就是类型参数有点点不同 : CAST(xxx AS 类型) , CONVERT(xxx,类型) 可用的类型 二进制,同带binary前缀的效果 : BINARY 字符型,可带参数 : CHAR() 日期 :
DATE
时间: TIME 日期时间型 :
DATE
TIME 浮点数 : DECIMAL 整数 : SIGNED 无符号整数 :
SELECT to_char(to_
date
(m.ma_
date
time,'yyyy-MM-dd hh24:mi:ss'),
'yyyyMMdd') FROM my_task m;
m.ma_
date
time是
varchar
2类型的日期格式,先
转换
date
类型
(必须添加时分秒,不然报ora-01830错误)
然后在随心所欲的
转换成
varchar
类型
SELECT to_char(to_
date
(
date
Str,‘yyyy-MM-dd hh24:mi:ss’),‘yyyyMMdd’) FROM A;
date
Str是
varchar
2类型的日期格式,先
转换成
date
类型
(必须添加时分秒,不然报ora-01830错误)
然后再
转换成
varchar
类型
时间在数据库中经常作为时间索引,在数据入库和出库以及更新的时候都需要变化。在一些指标计算或者是提取某段时间的数据时,都会根据数据库中的时间索引数据进行操作。因此很大一部分我们操作数据都得先从时间数据下手,但是想要真正提取到我们想要的时间作为索引,还需要我们掌握许多功能函数方便我们操作,这是一个比较复杂的运用过程。
在本人博客数据库
MySQL
已有三篇详细解释了大部分关于处理时间数据的函数以及实例运用,如果对这一方面有需求的可以看这两篇:...
MySQL
中的char和
varchar
是两种不同的数据类型。
char是一种固定长度的字符串类型,它需要指定一个固定的长度,如果存储的字符串长度小于指定长度,
MySQL
会自动在字符串后面添加空格来填充到指定长度。char类型的存储空间是固定的,所以在存储短字符串时可能会浪费空间。
varchar
是一种可变长度的字符串类型,它可以存储任意长度的字符串,但是它需要额外的存储空间来记录字符串的长度。
varchar
类型的存储空间是可变的,所以在存储短字符串时可以节省空间。
总的来说,如果需要存储长度固定的字符串,可以使用char类型;如果需要存储长度可变的字符串,可以使用
varchar
类型。