与大多数语言一样,SQL支持利用函数来处理数据。

好处:函数一般在数据上执行,给数据的转换和处理提供了方便。

可移植的(portable) : 能运行在多个系统上的代码。

注意:

1、多数SQL 是可移植的,在不同的DBMS 上虽有差异,但不难处理

2、函数的可移植性不高,几乎主要的DBMS 都有各自独特的函数(我行你不行,你行我不行之类),而且差异还很大

3、如果决定使用函数,要写注释(--),函数可以有效的完成工作,利于应用程序的性能。

大多数SQL 实现支持的类型函数:

1、用于处理文本串(如删除或填充值,转换值为大写或小写)的文本函数

2、用于在数值数据上进行算数操作(如返回绝对值,进行代数运算)的数值函数

3、用于处理日期和时间值并从这些值中提取特定成份(如:返回两个日期之差,检查日期的有效性等)的日期和时间函数。

4、返回DBMS 正使用的特殊信息(如返回与用户登陆信息,检查版本细节)的系统函数。

one、文本处理函数

简单使用:

--将名字转换为大写

select vend_name,Upper(vend_name) as vend_bigname from vendors order by vend_name;

soundex() 函数匹配所有发音类似的

要全部包括起来

select 字段 from 表名 where soundex(字段名) = soundex(该字段中发音类似的值);

Two、日期和时间处理函数

日期和时间采用相应的数据类型和特殊的格式存储,以便能快速和有效的排序或过滤,并节省物理存储空间

一般应用程序不使用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取统计和处理这些值。

注意:MySQL 使用的日期格式,无论你什么时候指定一个日期,不管是插入、更新或使用where进行过滤,

日期的格式必须是 yyyy-mm-dd ,虽然,MySQL支持两位数字的年份,但这是首选的(如2020-02-20)

使用的表

我们发现存储的数据类型是 datetime 格式是 yyyy-MM-dd HH:mm:ss

而我们一般可能需要的只是日期部分,怎么办来

有两种方式,

一种是放在程序里取日期部分

另一种是利用函数只取日期部分

--取日期部分

select order_num,date(order_date) as onlydate from orders order by order_date;

查询也是,如果只是想查询日期,则要使用Date(),即使你知道相应的列只包括日期也是如此

--将日期是2005-09-01 的检索出来

select order_num,order_date as onlydate from orders where date(order_date)= '2005-09-01' order by order_date;

时间的范围查找

--将日期在2005-09-01 到 2005-09-30之间的 的检索出来

select order_num,order_date as onlydate from orders where date(order_date) between '2005-09-01' and '2005-09-30' order by order_date;

支持多种查询方式

Three、数值处理函数  : 对数值进行处理,一般用于代数、三角或几何运算

在主要的DBMS 中数值函数是最一致最统一的函数

试一试

mysql 处理文本数据_MySQL ------ 数据处理函数(文本、日期、数值)(十)相关推荐

  1. mysql文本数据_mysql操作文本数据

    有时为了更快速地插入大批量数据或交换数据,需要从文本中导入数据或导出数据到文本. 一. 建立测试表,准备数据 首先建立一个用于测试的表示学生信息的表,字段有id.姓名.年龄.城市.薪水.Id和姓名不 ...

  2. python读取微博文本数据,对微博文本进行分句(分句主要以特定的标点符号为主)。...

    首先,您需要安装 Python 的第三方库 jieba,可以使用 pip install jieba 命令安装. 然后,您需要使用 Python 的文件操作函数读取微博文本数据,例如使用 open() ...

  3. mysql 存储过程 生成数据_mysql使用存储过程,批量生成测试数据

    1.存储过程代码 delimiter $$ DROP PROCEDURE IF EXISTS create_service_data$$ create procedure create_service ...

  4. mysql前一天的数据_mysql查询前一天数据-mysql根据时间查询前一天数据-吾爱编程网...

    今天一朋友说有个需求是mysql查询前一天的数据,然后进行数据同步,接下来吾爱编程为大家介绍一下关于mysql根据时间查询前一天数据的方法,有需要的小伙伴可以参考一下: 1.date格式:select ...

  5. mysql导出csv数据_mysql 导出 csv数据命令

    mysql 导出 csv数据命令 导出 select field1,field2,field3 from tablename into outfile '/home/output1.csv' fiel ...

  6. mysql 正无穷字符_mysql 字符串函数收集比较全

    ASCII(str)返回字符串str的 最左面字符的ASCII代码值.如果str是空字符串, 返回0.如果str是NULL,返回NULL. mysql> select ASCII('2'); - ...

  7. mysql 字符串 截取字母_MySQL字符串函数:字符串截取

    MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() ...

  8. mysql奢姿密码_mysql trim函数和oracle有区别吗

    满意答案 ebmbv 2016.12.26 采纳率:56%    等级:12 已帮助:13367人 trim函数可以过滤指定的字符串: 完整格式:TRIM([{BOTH | LEADING | TRA ...

  9. 导出mysql某个表数据_MYSQL使用mysqldump导出某个表的部分数据

    MySQLdump是MySQL自带的导出数据工具,通常我们用它来导出MySQL中,但是有时候我们需要导出MySQL数据库中某个表的部分数据,这时该怎么办呢? mysqldump命令中带有一个 --wh ...

最新文章

  1. LeetCode简单题之增量元素之间的最大差值
  2. gcc mips64编译后无法运行在octeon上运行_编译工具链
  3. 第一款鸿蒙摄像头,随时随地看一看!华为首款鸿蒙智能摄像头发布
  4. tf.nn.softmax_cross_entropy_with_logits 和 tf.contrib.legacy_seq2seq.sequence_loss_by_example 的联系与区别
  5. 复现经典:《统计学习方法》第12章 监督学习方法总结
  6. Android Activity为什么要细化出onCreate、onStart、onResume、onPause、onStop、onDesdroy这么多方法让应用去重载?
  7. java某个类避免findbug检查_Findbugs能否在java中检测到捕获RuntimeException?
  8. 京东面试官:呦,你对中间件 Mycat了解的还挺深~
  9. java高分面试指南:javamvc模式简单案例
  10. 搜狗浏览器怎么实现图标旋转 搜狗浏览器实现图标旋转的方法
  11. 训练日志 2019.7.24
  12. MSAgent 详细解说(上)
  13. Java主流框架的介绍
  14. python的发展前景与展望_Python语言在未来的发展前景
  15. JAVA将图片背景色设置为透明
  16. 容器云系列之容器技术相关概念介绍
  17. java编译程序包不存在_在cmd下编译Java源文件文件出现程序包xxxx不存在
  18. python判断两个数据集是否存在包含关系
  19. 如何把很多照片拼成一张照片_怎样用手机将多张照片拼成一张组合图?
  20. CentOS 搭建 Vsftpd 服务,一次性成功,收藏了!

热门文章

  1. discuz修改用户uid_haproxy实现discuz论坛的动静分离和负载均衡
  2. Vue 学习 之 7.01 学习笔记
  3. 支持异构图、集成GraphGym,超好用的图神经网络库PyG更新2.0版本
  4. 免费报名!百度大脑开放日·互联网内容安全线上专场来袭
  5. 文末福利 | 国际前沿算法峰会报名进行中,几大亮点抢先看
  6. 商汤科技 中科院自动化所:视觉跟踪之端到端的光流相关滤波 | CVPR 2018
  7. 很好的阻止了事件的发生_请定好您的闹钟,八月,夜空中将发生这13件超酷的天文事件...
  8. 云原生系列「四」我为啥不看好ServiceMesh?
  9. Mybatis Plus——[Could not set property 'id' of '***' with value]解决方案
  10. Spring Boot——[JPA 无法注入 JpaRepository 子接口问题]解决方案