zoukankan      html  css  js  c++  java
  • MySQL ------ 数据处理函数(文本、日期、数值)(十)

    与大多数语言一样,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 中数值函数是最一致最统一的函数

     

     试一试

     

  • 相关阅读:
    蓝鲸财经新闻记者实战培训
    雷军解密小米商业内核
    OpenGL6-纹理动画
    OpenGL5-纹理贴图
    OpenGL4-绘制旋转的立方体
    OpenGL3-绘制各种图元绘制
    OpenGL2-绘制三角形
    OpenGL1-创建窗口(建立Win32的OpenGL开发环境 )(代码上传)
    一步步做程序优化-讲一个用于OpenACC优化的程序(转载)
    常用编译选项介绍
  • 原文地址:https://www.cnblogs.com/obge/p/12961602.html
Copyright © 2011-2022 走看看