• MySQL(四)字段及常用函数


    一、字段

    数据库表中的每一行叫做一个“记录”,每一个记录包含这行中的所有信息,但记录在数据库中并没有专门的记录名,常常用它所在的行数表示这是第几个记录。

    在数据库中存放在表行列交叉处的数据叫做“值”,它是数据库中最基本的存储单元,它的位置要由这个表中的记录和字段来定义。

    1、字段(filed):与对象或类关联的变量(大多数时候,与列的意思相同);每个字段由若干按照某种界限划分的相同数据类型的数据项组成。

    但有时候,字段不是表中的列,而是在计算字段的连接上;

    2、拼接(concatenate):用来拼接2个列的函数,可将值联结到一起构成单个值

    PS:多数DBMS使用+或者||实现拼接,MySQL则使用concat()函数来实现(当把SQL语句转换为MySQL语句时,要注意这个区别)

    concat()函数:拼接串,即把一个或多个串连接起来形成一个较长的串;需要一个或多个指定的串,各个串之间用逗号分隔

    3、别名(alias):一个字段或值的替换名,别名用as关键字赋予(比如上面例子中的abc),有时也称为导出列(derived column)

    别名的作用:

    ①指示SQL创建一个包含指定计算的计算字段

    ②在实际的表列名包含不符合规定的字符(如空格)时重新命名它

    ③在原来的名字含混或容易误解时扩充它

    4、算数操作符:计算字段时常用的操作符

    计算字段的常见用途就是对检索出的数据进行算数计算,MySQL基本操作符如下:

    其中,圆括号()可用来区分优先顺序

     

    二、数据处理函数

    1、特点

    SQL支持利用函数来处理数据,函数一般都是在数据上执行的

    函数没有SQL的可移植性强(能运行在多个系统上的代码称为可移植的{portable}),多数SQL是可移植的

    函数可移植性不强(几乎每种主要的DBMS的实现都支持其他实现不支持的函数,而且有时差异很大)

    PS:如果使用函数,应保证做好代码注释,以便日后使用时可以确切知道所编写的SQL代码的含义

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

    ①用于处理文本串(删除填充值,转换值大小写等)的文本处理函数

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

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

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

    2、文本处理函数

    例子:select column upper(column) as column1 from table order by column;

    常见的文本处理函数表如下:

    soundex是一个将任何文本串转换为描述其语音表示的字母数字模式的算法;soundex考虑了类似的发音字符和音节,使得能对串进行发音比较而不是字母比较(多数DBMS都提供对其的支持)

    3、数值处理函数

    数值处理函数仅处理数值数据,这些函数一般主要用于代数、三角或几何计算,使用频率相对不是太高(在主要的DBMS中,数值函数是最统一最一致的函数)

    常用数值处理函数表如下:

    4.日期和时间处理函数

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

    一般来说应用程序不适用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取、统计和处理这些值(日期和时间函数在MySQL语言中具有重要的作用)

    常用日期和时间处理函数表如下:

    PS:对于日期,无论插入更新还是使用where子句进行过滤,日期格式必须为yyyy-mm--dd,而且应始终使用4位数字的年份

        如果需要的是日期值,使用date()函数是一个好习惯;如果想要时间值时,time()函数也是最好的选择

    例子:select column1, column2 from table where date(table_date) between '2013-05-20' and '2014-5-20';

    其中between操作符用来把2013-05-20和2014-05-20定义为一个要匹配的日期范围

    select column1, column2 from table where year(table-date) = 2013 and month(table_date) = 5;

    year()是一个日期(从日期时间)中返回年份的函数,month()从日期中返回月份;

    因此,where year(table-date) = 2013 and month(table_date) = 9检索出table_date为2013年5月的所有行!

     

  • 相关阅读:
    SQL SqlParameter
    C# 迭代器与yield关键字
    ADO.NET调用SQL存储过程
    C# XML
    C# MDI应用程序
    LINQ 基础
    C# 文件操作
    C# 操作注册表
    SQL从SQL SERVER中获取数据库结构信息
    Linux发展史
  • 原文地址:https://www.cnblogs.com/imyalost/p/6381703.html
Copyright © 2020-2023  润新知