精华内容
下载资源
问答
  • 常用函数符号
    2022-03-20 18:13:42

    主博客:Python 编程笔记(本人出品,必属精品)

    1、常用符号及含义

    符号含义符号含义
    '字符串"字符串
    \转义\续行符(在行尾时)
    +-
    */
    **幂乘//整除,地板除,即先做除法(/),然后向下取整(floor)
    %取模=赋值
    +=加法赋值-=减法赋值
    *=乘法赋值/=除法赋值
    %=取模赋值//=整除赋值
    **=幂乘赋值
    !=不等?==相等?
    <小于?>大于?
    <=小于等于?>=大于等于?
    &位与|位或
    ^位异或~位取反
    <<左移>>右移
    and布尔与or布尔或
    not布尔非in在里面?
    not in不在里面?is引用的同一对象?
    is not引用不同对象?

    2、常用函数及含义

    主要是一些数学函数,首先需要导入math

    import math
    
    函数含义函数含义
    pow(a, n)a 的 n 次方abs(a)a 的绝对值
    round(a)a 四舍五入int(a)a 转换为整数
    math.ceil(a)a 上入整数long(a)a 转换为长整数
    math.floor(a)a 下舍整数float(a)a 转换为浮点数
    input()获取输入str(a)a 转换为字符串
    raw_input()获取输入,返回字符串repr(object)返回值的字符串表示形式
    range(start, stop[, step])计数从 start 开始。默认是从 0 开始。计数到 stop 结束,但不包括 stop。步长,默认为1。
    math.sqrt(a)a 开根号cmath.sqrt(a)a 复数开根号
    math.exp(a)e的a次幂math.fabs(a)a 的绝对值
    math.log10(a)以10为基数的a的对数math.log(a)以e为基数的a的对数
    max(a1,a2,a3...)返回给定参数(可为序列)的最大值min(a1,a2,a3...)返回给定参数的最小值
    math.modf(a)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
    acos(x)反余弦弧度asin(x)反正弦弧度
    atan(x)反正切弧度atan2(y,x)y/x的反正切
    cos(x)弧度的余弦sin(x)弧度的正弦
    tan(x)弧度的正切hypot(x,y)欧几里德范数 sqrt(x*x + y*y)
    degrees(x)弧度转角度radians(x)角度转弧度
    math.pi圆周率math.e数学常量e
    更多相关内容
  • 主要介绍了PostgreSQL 正则表达式 常用函数的总结的相关资料,对那些需要进行复杂数据处理的程序来说,正则表达式无疑是一个非常有用的工具,这里就介绍下如何使用,需要的朋友可以参考下
  • PHP常用符号函数 其中包含基本符号和一些外面常见的PHP符号
  • 第4章 符号数学的基础 sym(x) 创建一个符号变量x Syms a b c findsym对默认自变量进行查询 findsym(f) factor(S) pretty(f) 将表达式按照类似书写习惯的方式显示 expand(S) 因式展开符号表达式S collect(S,n) 将符号...
  • 常见函数及运算符号归纳

    千次阅读 2016-08-22 14:03:23
    常见基本函数及运算符号

    管理R工作空间的函数

    getwd():显示当前的工作目录
    setwd():修改当前的工作目录
    ls():列出当前工作空间中的对象
    rm():移除(删除)一个或多个对象
    option():显示或设置当前选项
    load():读取一个工作空间到当前会话中
    q():退出R


    处理数据的基本函数

    class():查看数据类型
    unclass():去掉变量的属性
    exists():用来判断环境中是否存在某个对象
    t():表示转置
    diag():返回矩阵的对角线数值
    names():给变量命名
    dim():查看或设定某个对象的维度
    rowSums():行和
    rowMeans():行平均
    colSums():列和
    colMeans():列平均
    length():显示对象中元素/成分的数量
    intersect():取交集
    union():取并集
    str():显示某个对象的结构
    cbind():按列合并对象,每个对象必须拥有相同的行数,且要以相同的排序顺序
    rbind():按行合并对象,每个对象必须拥有相同的变量,不过它们的顺序不必一定相同
    merge():横向合并两个数据框(数据集),可以将两个数据框按某个或某几个共有变量进行合并
    head():列出某个对象的开始部分(默认6行)
    tail():列出某个对象的最后部分(默认6行)
    newobject<-edit():编辑对象并另存为newobject
    fix():直接编辑对象
    any(is.na()):返回TRUE(FALSE),表示有(无)缺失值
    sum(is.na()):表示缺失值的个数
    na.omit():移除所有含有缺失值的观测
    sort():对数据进行排序,返回排好序的内容(默认升序)
    order():对数据进行排序,返回排好序内容的下标(默认升序)
    subset():选择变量和观测
    sample():从数据集中(有放回或无放回地)抽取大小为n的一个随机样本
    nchar():计算字符数量
    substr():提取或替换一个字符向量中的子串
    strsplit():分割字符向量中的元素
    paste():连接字符串
    toupper():大写转换
    tolower():小写转换
    length():对象的长度
    seq(from,to,by):生成一个序列
    rep(x,n):将x重复n次
    cat():连接对象,输出的对象默认用空格分开。\n表示新行,\t为制表符,\’为单引号,\b为退格
    cut():将数据进行切分
    rev():将向量逆序排列


    逻辑运算符

    <(>):小于(大于)
    <=(>=):小于或等于(大于或等于)
    ==:严格等于
    !=:不等于
    !x:非x
    x | y: x或y
    x & y: x和y


    数学运算符号及函数

    x%%y: x除以y产生的余数
    %*%:矩阵乘法
    x%in%y:判断x是否为y中的元素
    solve(x,y):用来求解线性方程组,如果没有第二个参数输入,则会返回矩阵的逆
    abs():绝对值
    sqrt():平方根
    round(x,digits=n):将x四舍五入为指定位的小数
    signif(x,digits=n):将x四舍五入为指定的有效数字位数
    ceiling(x):不小于x的最小整数
    floor(x):不大于x的最大整数
    trunc(x):向0的方向截取的x中的整数部分
    cos()、sin()、tan():余弦、正弦、正切
    acos()、asin()、atan():反余弦、反正弦、反正切
    cosh()、sinh()、tanh():双曲余弦、双曲正弦、双曲正切
    acosh()、asinh()、atanh():反双曲余弦、反双曲正弦、反双曲正切
    log(x,base=n):对x取以n为底的对数
    log():自然对数,即ln()
    exp():指数函数,即e^()


    统计函数

    mean():平均数
    median():中位数
    sd():标准差
    var():方差
    quantile(x,probs):求分位数。其中probs为一个由[0,1]之间的概率值组成的数值向量
    range():求值域
    sum():求和
    diff(x,lag=n):滞后差分,lag用来指定滞后几项。默认的lag值为1
    min():最小值
    max():最大值
    scale(x,center=TRUE,scale=TRUE):为数据对象x按列进行中心化(center=TRUE)或标准化(center=TRUE,scale=TRUE)


    概率函数

    形式:[dpqr]distribution_abbreviation():d=密度函数,p=分布函数,q=分位数函数,r=生成随机数(随机偏差)

    分布名称缩写分布名称缩写
    二项分布binom卡方分布chisq
    正态分布norm均匀分布unif
    t分布tF分布f
    泊松分布pois指数分布exp
    几何分布geom柯西分布cauchy
    Beta分布betaGamma分布gamma
    Wilcoxon符号秩分布signrankWilcoxon秩和分布wilcox
    展开全文
  • matlab常用函数大全

    2010-06-20 10:28:18
    15、符号工具包 15.1 微积分 15.2 线性代数 15.3 化简 15.4 方程求解 15.5 变量精度 15.6 积分变换 15.7 基本操作 15.8 图形应用 15.9 Maple 接口 16、图象处理工具箱 16.1 图象显示 16.2 图象文件...
  • MySQL常用函数

    千次阅读 2021-11-22 09:19:28
    常用函数包含字符串函数、数值函数、日期函数和系统信息函数。 • 字符串函数:该类函数主要用于处理字符串。 • 数值函数:该类函数主要用于处理数字。 • 日期函数:该类函数主要用于处理日期和事件。 • ...

    一、学习任务1:使用字符串函数

    虽然每种数据库软件都支持SQL语句,但是每种数据库却拥有各自所支持的函数。如果想使用数据库软件,除了需要会使用SQL语句外,还需要掌握函数。常用的函数包含字符串函数、数值函数、日期函数和系统信息函数。

    字符串函数:该类函数主要用于处理字符串。

    数值函数:该类函数主要用于处理数字。

    日期函数:该类函数主要用于处理日期和事件。

    系统信息函数:该类函数主要用于获取MySQL软件的系统信息。

    注意:能运行在多个系统上的代码具有可移植性,在数据库软件中,多数SQL语句是可移植的,且可移植性比较强;而函数的移植性不强,主要是由于各种数据库软件都支持自己所特有的函数。因此许多SQL用户不认同使用数据库软件所特有的函数.

    字符串函数是常用函数之一,是MySQL用户必须要掌握的函数之一。在MySQL软件中, 符串类型数据处理占了很大一部分,因此灵活地使用字符串函数,是衡量用户的MySQL标准之一。

     字符串函数

    函数

    CONCAT(str1,str2,.. .strn)

    连接字符串价str1str2…、strn为一个完整字符串

    INSERT(str,x,y,instr)

    将字符串价从第x位置开始,y个字符长的子串替换为字符串instr

    L0WER(str)

    将字符串str中所有字符变为小写

    UPPER(str)

    将字符串str中所有字符变为大写

    LEFT(str,x)

    返回字符串str中最左边的x个字符

    RIGHT(str,x)

    返回字符串str最右边的x个字符

    LPAD(str,n,pad)

    使用字符串pad对字符串str最左边进行填充,直到长度为n个字符长度

    RPAD(str,n,pad)

    使用字符串pad对字符串str最右边进行填充,直到长度为n个字符长度

    LTRIM(str)

    去掉字符串str左边的空格

    RTRIM(str)

    去掉字符串str右边的空格

    REPEAT(str,x)

    返回字符串str重复x次的结果

    REPLACE(str,a,b)

    使用字符串b替换字符串str中所有出现的字符串a

    STRCMP(str1,str2)

    比较字符串str1str2

    TRIM(str)

    去掉字符串str行头和行尾的空格

    SUBSTRING(str,x,y)

    返回字符串str中从x位置起y个字符长度的宇符串

    下面将通过具体实例详细介绍字符串函数中常用的函数。

    1.1 合并CONCAT()和CONCAT_WS()

    MySQL软件中可以通过函数CONCAT()和CONCAT_WS()将传入的参数连接成为一个字符串。

    CONCAT(s1,s2sn)

    上述函数会将传入的参数连接起来返回所合并的字符串类型数据。如果其中一个参数为NULL, 则返回值为NULL

    【实例13-1】下面通过具体实例演示函数CONCAT()的使用,具体步骤如下:

    (1)执行函数CONCAT(),实现字符串My”、“SQL合并功能具体语句如下

    select concat('my','s','ql');

    (2)执行SQL函数CONCAT()实现字符串My”、“S”、“QLNULL合并功能具体SQL语句如下

    SELECT CONCAT('My', 'S', 'QL',NULL) '合并后字符串';

    【运行效果】执行上面的SQL语句,其结果如图所示。

     

     

    执行结果显示,当所传入的参数值中有一个值为NULL,返回的结果值将为NULL

    (3)执行SQL函数CONCAT(),实现将当前时间CURDATE()和数值12.34合并功能,具体语句如下:

    SELECT CONCAT (CURDATE(), 12.34) '合并后字符串';

    【运行效果】执行上面的SQL语句,其结果如图所示。

     

    不仅可以接受字符串参数,而且还可以接受其他类型参数。

    CONCAT_WS()函数全称为CONCAT With Separator,CONCAT()函数的特殊形式。函数CONCAT_WS()的定义如下

    CONCAT_WS(SEP,Sl, S2, …SN)

    上述函数与CONCAT()相比,多了一个表示分割符的sep参数,即不仅将传入的其他参数连接起来,而且还会通过分割符将各个字符串分割开。分隔符可以是一个字符串,也可以是其他参数。如果分隔符为NULL,则返回结果为NULL。函数会忽略任何分隔符参数后的NULL值。

    【实例13-2】下面通过具体实例演示函数CONCAT_WS()的使用,具体步骤如下:

    (1)执行SQL函数CONCAT_WS(),实现带有区号的电话功能,具体SQL语句如下

    SELECT CONCAT_WS ('-', ' 029',88461234) '合并后字符串';

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,实现了通过分隔符(-)将传入参数的隔开功能,即将字符串“029”和88461234合并成一个字符串,同时通过符号(-)将合并后的字符串分割。

    (2)执行SQL函数CONCAT_WS(),当分割符参数的值为NULL时,具体SQL语句如下:

    SELECT CONCAT_WS(NULL, '029', 88461234)  '合并后字符串';

    (3)执行SQL函数00?^11%30,当分割符参数后值存在>0^^具体8(^语句如下 

    SELECT CONCAT_WS('-', '029',NULL,88461234) '合并后字符串';

    【运行效果】执行上面的语句,其结果如图所示。

     

     

    1.2 比较字符串大小函数STRCMP()

    MySQL软件中可以通过函数STRCMP()比较所传入的字符串对象。函数STRCMP()的定义如下:STRCMP(str1,str2)

    上述函数用来比较字符串参数str1str2如果参数str1大于str2,则返回结果1;如果参数str1小于str2,则返回结果-1;如果参数str1等于str2,则返回结果0

    下面通过具体实例演示STRCMP()函数的使用,具体如下。

    【实例11-3】执行SQL语句的STRCMP()函数,比较一些字符串,具体SQL语句如下:

    select strcmp('abc','abd'),strcmp('abc','abc'),strcmp('abc','abb');

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,由于字符串abc小于字符串abd”,所以返回结果为-1;由于字符串abc等于字符串abc”,所以返回结果为0;由于字符串abc大于字符串abb”,所以返回结果为1

    1.3 获取字符串长度函数LENGTH()和字符串函数CHAR_LENGTH()

    MySQL软件中可以通过LENGTH()和CHAR_LENGTH()函数获取字符串的长度。 函数LENGTH()的定义如下:

    LENGTH(str)

    上述函数会获取传入的参数str的长度。 

    函数CHAR_LENGTH()的定义如下:

    CHAR_LENGTH(str)

    上述函数会获取传入的参数str的字符数。

    【实例13-4】下面通过具体实例演示LENGTH()和CHAR_LENGTH()函数的使用具体步骤如下

    (1)执行SQL语句的LENGTH(),计算英文字符串“MySQL”和中文字符串常建功的字节长度具体SQL语句如下

    SELECT 'MySQL'as '英文字符串',LENGTH('MySQL') '字符串字节长度','常建功'as '中文字符串',LENGTH('常建功') '字符串字节长度';

    (2)执行SQL语句的CHAR_LENGTH()函数计算英文字符串MySQL和中文字符串常建功的字符长度具体SQL语句如下

    mysql> SELECT 'MySQL'as '英文字符串',CHAR_LENGTH('MySQL') '字符串字符长度','常建功'as '中文字符串',CHAR_LENGTH('常建功') '字符串字符长度';

    【运行效果】执行上面的语句,其结果如图所示。

     

     

    执行结果显示,获取传入字符串的长短,由于英文字符占一个字节,所以字符串MySQL的长度为5;由于汉字字符占三个字节,所以字符串“常建功”的长度为9

    获取传入字符串的字符数,即字符串MySQL的字符数为5,字符串“常建功”的字符数为3

    字符串MySQL共有5个字符,但是占有6个字节空间。这是因为每个字符串都会以\0结束,结束符\0也会占用一个字节空间。根据执行结果可以发现,LENGTH()与CHAR_LENGTH()函数作用一样,会获取字符串的字符数,而不是所占空间的大小。

    1.4 实现字母大小写转换函数UPPER()和LOWER()

    MySQL软件中可以通过UPPER()和UCASE()函数实现将字符串的所有字母转换成大写字母。函数UPPER()即的定义如下

    UPPER(S)

    上述函数会将所传入的字符串对象S中所有字母全部转换成大写字母。关于实现字母大写转换函数除了UPPER()函数外,还可以通过UCASE()函数来实现,其具体定义如下:

    UCASE(S)

    下面通过具体实例演示现UPPER()UCASE()函数的使用具体步骤如下

    【实例13-5】执行SQL语句的UPPER()和UCASE()函数,实现将字符串mysql中的所有小写字母转换成大写字母,具体SQL语句如下

    SELECT 'mysql' as '字符串',UPPER('mysql')'转换后字符',UCASE('mysql')'转换后字符';

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,将传入的字符串中所有的字母全部转换成大写字母,即返回的字符串为MYSQL'

    与UPPER()函数的作用相反,MySQL软件提供LOWER()和LCASE()函数来实现将字符串中所有的字母转换成小写字母。UPPER()函数的定义如下:

    LOWER(S)

    上述函数会将所传入的字符串对象S中所有宇母全部转换成小写字母。

    LCASE()函数的定义如下:

    LCASE (S)

    下面通过具体实例演示LOWE()和LCASE()函数的使用具体步骤如下

    【实例13-6】执行SQL语句的LOWER()LCASE()函数实现将字符串MYSQL中的所有 大写字母转换成小写字母具体SQL语句如下

    SELECT 'MYSQL'as '字符串',LOWER('mysql')'转换后字符串',LCASE('mysql')'转换后字符串';

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示将传入的字符串中所有的字母全部转成小写字母即返回的字符串为mysql”。

    1.5 查找字符串

    MySQL软件中提供了丰富的函数去査找字符串的位置分别为FIND_IN_SET()函数、FIELD()函数、LOCATE()函数、POSITION()函数和INSTR()函数同时还提供了查找指定位置的字符串的函数ELT()。

    1.返回字符串位置的FIND_IN_SET()函数

    MySQL软件中可以通过FIND_IN_SET()函数获取相匹配字符串的位置。FIND_IN_SET()函数的定义如下:

    FIND_IN_SET (str1, str2)

    上述函数将会返回在字符串str2中与str1相匹配的字符串的位置,参数str2字符串中将包含若干个用逗号隔开的字符串。

    下面通过具体实例演示FIND_IN_SET()函数的使用具体步骤如下。

    【实例13-7】执行SQL语句的FIND_IN_SET()函数查找与字符串MySQL相匹配的位置, 具体语句如下

    SELECT FIND_IN_SET('MySQL','oracle,sql server,MySQL') '位置';

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果成功显示出关于字符串相匹配的位置。

    2.返回指定字符串位置的FIELD()函数

    MySQL软件中可以通过FIELD()函数获取相匹配字符串的位置。FIELD()函数的定义如下:

    FIELD(str, str1, str2...)

    上述函数将会返回第一个与字符串str匹配的字符串的位置。 下面通过具体实例演示FIELD()函数的使用,具体步骤如下。

    【实例13-8】执行SQL语句的FIELD()函数,查找第一个与字符串MySQL相匹配的位置,具体SQL语句如下:

    SELECT FIELD('MySQL','oracle','sql server', 'MySQL') '位置';

    【运行效果】执行上面的语句,其结果如图所示。

     

     

    执行结果成功显示出关于字符串相匹配的位置。

    3.返回子字符串相匹配的开始位置

    MySQL软件中可以通过三个函数获取子字符串相匹配的开始位置它们分别为LOCATE() POSITION()和INSTR()。LOCATE()函数的定义如下:

    LOCATE(str1,str)

    上述函数将会返回参数str中字符串strl的开始位置。

    其他两个函数定义如下:

    POSITION(str1 IN str)

    INSTR(str,str1)

    下面通过具体实例演示LOCATE() POSITION()和INSTR()函数的使用具体步骤如下 

    【实例13-9】执行相应891语句的函数査找相匹配的开始位置具体3(^1^语句如下

    SELECT LOCATE('SQL', 'MySQL') '位置',POSITION('SQL' IN 'MySQL') '位置',INSTR('MySQL', 'SQL') '位置';

    【运行效果】执行上面的语句,其结果如图所示。  

     

    执行结果成功显示出字符串相匹配的开始位置。

    4.返回指定位置的字符串的ELT()函数

    在MySQL软件中可以通过ELT()函数获取指定位置的字符串。ELT()函数的定义如下:

    ELT(n,str1,str2…

    上述函数将会返回第n个字符串。

    下面通过具体实例演示ELT()函数的使用,具体步骤如下:

    【实例13-10】执行SQL语句的ELT() 函数査找指定位置的字符串具体语句如下 

    select elt(1,'mysql','oracle','sql server') '第一个位置的字符串';

    【运行效果】执行上面的语句其结果如图所示。

     

    执行结果成功显示出指定位置的字符串。

    5.选择字符串的MAKE_SET()函数

    MySQL软件中可以通过MAKE_SET()函数获取字符串MAKE_SET()函数的定义如下

    MAKE_SET (num, str1, str2…strn)

    上述函数首先会将数值num转换成二进制数,然后按照二进制数从参数str1,str2,strn中选取相应的字符串。再通过二进制数来选择字符串时,按从右到左的顺序读取该值,如果值为1值选择该字符串,否则将不选择该字符串。

    下面通过具体实例演示MAKE_SET()函数的使用,具体步骤如下:

    【实例13_11】执行30[语句的\^\^_3£0函数,获取相应字符串,具体30义语句如下

    SELECT BIN(5) '二进制数',MAKE_SET(5,'MySQL','Oracle','SQL Server','PostgreSQL') '选取后的字符串',BIN(7) '二进制数',MAKE_SET(7,'MySQL','Oracle','SQL Server','PostgreSQL') '选取后的字符串';

    【运行效果】执行上面的语句其结果如图所示。

     

    由于数值5的二进制数为101,所以选择第一个和第三个字符串,因此显示结果为MySQL, SQL Server数值7的二进制数为111,所以选择第一个、第二个和第三个字符串,因此显示的字符串为MySQL, SQLServer, PostgreSQL

    1.6 从现有字符串中截取子字符串

    MySQL软件中提供了丰富的函数去实现截取子字符串功能分别为LEFT()函数、RIGHT()函数、SUBSTRING()和MID()函数。

    1.从左边或右边截取子字符串

    MySQL软件中可以通过LEFT()函数获取字符串中从左边数的部分字符串,可以通过RIGHT() 函数获取字符串中从右边数的部分字符串。LEFT()函数的定义如下:

    LEFT(str,num)

    上述函数会返回字符串str中的包含前num个字母(从左边数)的字符串。

    关于RIGHT()函数的定义如下:

    RIGHT(str,num)

    上述函数会返回字符串str中的包含后num个字母从右边数的字符串。

    下面通过具体实例演示LEFT()和RIGHT()函数的使用,具体步骤如下:

    【实例13-12】执行SQL语句的LEFT()和RIGHT()函数,获取字符串mysql中的前2个字母和后3个字母的字符串,具体语句如下:

    SELECT 'MySQL' 字符串,LEFT('MySQL',2) '前2个字符串',RIGHT('MySQL',3) '后3个字符串';

    【运行效果】执行上面的语句其结果如图所示。

     

    2.截取指定位置和长度子字符串

    MySQL软件中可以通过SUBSTRING()和MID()函数截取指定位置和长度的子字符串SUBSTRING()函数的定义如下

    SUBSTRING(str,num,len)

    上述函数会返回字符串str中的第num个位置开始长度为len的子字符串。

    关于MID()函数的定义如下

    MID(str,num,len)

    下面通过具体实例演示SUBSTRING()MID()函数的使用具体步骤如下

    【实例13-13】执行SQL语句的SUBSTRING()MID()函数获取字符串“oraclemysql中的 子字符串“mysql”具体语句如下

    SELECT 'oraclemysql' '字符串',SUBSTRING('oraclemysql', 7,5) '截取子字符串',MID('oraclemysql',7,5) '截取子字符串';

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,成功截取传入的字符串中的子字符串mysql。

    1.7 去除字符串的首尾空格

    MySQL软件中提供了丰富的函数去实现去除字符串空格功能,分别为LTRIM()函数RTRIM()和TRIM()函数

    1.去除字符串开始处空格

    可以通过LTRIM()函数去掉字符串开始处的空格,LTRIM()函数的定义如下:

    LTRIM(str)

    上述函数会返回去掉开始处(左边)空格的字符串str 下面通过具体实例演LTRIM()函数的使用,具体步骤如下:

    【实例13-14】执行SQL语句的LTRIM()函数,去除字符串“ MySQL 左边的空格。在具体处理时,操作的字符串为 MySQL 该字符串的左右两边各有一个空格。因为空格显示不太明显,所以在该字符串左右两边与字符-连接起来。具体语句如下:

    SELECT CONCAT('-', ' MySQL ','-') '原来字符串',CHAR_LENGTH(CONCAT('-', ' MySQL ', '-')) '原来字符串长度',CONCAT('-', LTRIM(' MySQL '),'-') '处理后字符串',CHAR_LENGTH(CONCAT('-', LTRIM(' MySQL '),'-')) '处理后字符串长度';

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,能够正确去掉字符串“ MySQL ”左边的空格。

    2.去除字符串结束处空格

    MySQL软件中可以通过RTRIM()函数去掉字符串结束处的空格,RTRIM()的定义如下:

    RTRIM(str)

    上述函数会返回去掉结束处(右边)空格的字符串str,下面通过具体实例演示RTRIM()函数的使用,具体步骤如下:

    【实例13-15】执行SQL语句的RTRIM()函数,去除字符串“ MySQL ”右边的空格,具体语句如下:

    SELECT CONCAT('-', ' MySQL ','-') '原来字符串',CHAR_LENGTH(CONCAT('-', ' MySQL ', '-')) '原来字符串长度',CONCAT('-',RTRIM(' MySQL '),'-') '处理后字符串',CHAR_LENGTH(CONCAT('-',RTRIM(' MySQL '),'-')) '处理后字符串长度';

    【运行效果】执行上面的语句其结果如图所示。

     

    执行结果显示,能够正确去掉字符串“ MySQL 右边的空格„

    3.去除字符串首尾空格

    TRIM()函数的定义如下:

    TRIM(str)

    上述函数会返回去掉首尾空格的字符串str下面通过具体实例演示TRIM()函数的使用,具体步骤如下:

    【实例13-16】执行SQL语句的TRIM()函数,去除字符串“ MySQL ”首尾空格,具体语句如下:

    SELECT CONCAT('-', ' MySQL ','-') '原来字符串',CHAR_LENGTH(CONCAT('-', ' MySQL ', '-')) '原来字符串长度',CONCAT('-',TRIM(' MySQL '),'-') '处理后字符串',CHAR_LENGTH(CONCAT('-',TRIM(' MySQL '),'-')) '处理后字符串长度';

    【运行效果】执行上面的语句其结果如图所示。

     

    执行结果显示,能够正确去掉字符串“ MySQL 首尾空格。

    1.8 替换字符串

    MySQL软件中提供了丰富的函数去实现替换字符串功能分别为INSERT()REPLACE()函数。

    1.使用INSERT()函数

    MySQL软件中可以通过INSERT()函数实现替换字符串功能。INSERT()函数的定义如下

    INSERT(str,pos,len,newstr))

    上述函数会将字符串str中的pos位置开始长度为len的字符串用字符串newstr来替换。如果参数pos的值超过字符串长度,则返回值为原始字符串str。如果len的长度大于原来字符串str中所剩字符串的长度,则从位置pos开始进行全部替换。若任何一个参数为NULL,则返回值为NULL

    【实例13-17】下面通过具体实例演示INSERT()函数的使用,具体步骤如下:

    (1)执行SQL语句的取INSERT()函数,实现字符串替换功能,具体语句如下:

    SELECT '这是MySQL数据库管理系统' '字符串',INSERT('这是MySQL数据库管理系统',3,5,'Oracle') '转换后字符串';

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    (2)执行SQL语句的INSERT()函数,当替换的起始位置大于字符串长度,具体SQL语句如下:

    SELECT '这是MySQL数据库管理系统' '字符串',CHAR_LENGTH('这是MySQL数据库管理系统') '字符串字符数',INSERT('这是MySQL数据库管理系统',16,5,'Oracle') '转换后字符串';

    【运行效果】执行上面的语句其结果如图所示。

     

    执行结果显示,当所传入的替换的起始位置大于字符串长度,将返回原字符串这是MySQL 数据库管理系统”。

    (3)执行SQL语句的INSERT()函数,当所要替换的长度大于原来字符串中所剩字符串的长度,则从起始位置开始进行全部替换,具体语句如下:

    SELECT '这是MySQL数据库管理系统' '字符串',CHAR_LENGTH('MySQL数据库管理系统') '剩余字符数',INSERT('这是MySQL数据库管理系统',3,13,'Oracle') '转换后字符串';

    运行效果】执行上面的语句其结果如图所示。

     

    执行结果显示,当所要替换的长度大于原来字符串中所剩字符串的长度,则从起始位置开始进行全部替换,将返回原字符串“这是Oracle”。

    2.使用REPLACE()函数

    MySQL软件中除了提供INSERT()函数外还可以通过REPLACE()函数来实现替换字符串功能。REPLACE()函数的定义如下:

    REPLACE(str,substr,newstr)

    上述函数会将字符串str中的子宇符串substr用字符串的newstr来替换。

    【实例13-18】下面通过具体实例演示REPLACE()函数的使用,具体步骤如下: 

    (1)执行SQL语句的REPLACE()函数,实现字符串替换功能,具体语句如下:

    SELECT '这是MySQL数据库管理系统' '原字符串',REPLACE('这是MySQL数据库管理系统','MySQL','Oracle') '替换后字符串';

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,实现了将字符串“这是MySQL数据库管理系统”中的字符MySQL用字符 Oracle字符串替换。

    上述字符串函数为用户最常用的函数,关于字符串的函数还有许多,感兴趣的学员可以查看相关资料继续学习。

    二、学习任务2:使用数值函数

    数值函数是常用函数之一,在MySQL软件中除了字符串类型外,数值处理也占了很大一部分。MySQL软件所支持的常用数值函数如下表所示。

     常用数值函数

    函数

    功能

    ABS(x)

    返回数值x的绝对值

    CELL(x)

    返回大于x的最大整数值

    FLOOR(x)

    返回小于x的最大整数值

    MOD(x,y)

    返回x模y的值

    RAND()

    返回0-1内的随机数

    ROUND(x,y)

    返回数值x的四舍五人后有y位小数的数值

    TRUNCATE(x,y)

    返回数值x截断为y数的数值

    2.1 获取随机数

    在具体应用中,有时候需要获取随机数。通过RAND()和RAND(x)函数来获取随机数。上述两个函数都会返回01间的随机数,其中RAND()函数返回的数是完全随机的, RAND(x)函数返回的随机数值是相同的。

    下面通过具体实例演示函数RAND()和RAND(x)的使用具体步骤如下:

    【实例13-19】执行SQL语句的相应函数,具体的语句如下:

    SELECT RAND() ,RAND() ,RAND(3) ,RAND(3);

    【运行效果】执行上面的语句,其结果如图所示。

     

    执行结果显示,每次运行RAND()函数返回的结果不一样。如果想获取值相同的随机数,可以通过执行带有相同参数值的RAND()函数来实现。

    2.2 获取整数的函数

    在具体应用中,有时候需要获取整数。在MySQL软件中,通过CEIL()(或者CEILING())和FLOOR()函数实现获取整数操作。CEIL()的定义如下:

    CEIL (x)

    上述函数返回大于或等于数值x的最小整数。

    FLOOR()函数的定义如下

    FLOOR (x)

    上述函数返回小于或等于数值x的最大整数。

    【实例13-20】执行CEIL()和CEILING()函数,获取整数的数值,具体SQL语句如下:

    SELECT CEIL(4.3),CEIL(-2.5),CEILING(4.3),CEILING(-2.5);

    【运行效果】执行上面的语句,其结果如图所示。

     

    【实例13-21】执行FLOOR()函数,获取整数的数值,具体SQL语句如下:

    SELECT FLOOR(4.3),FLOOR(-2.5)

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    2.3 截取数值函数

    在具体应用中,有时候需要对数值的小数位数进行截取。在MySQL软件中,TRUNCATE()函数实现截取操作。TRUNCATE()函数的定义如下;

    TRUNCATE(x,y)

    上述函数返回数值x保留到小数点后y位的值。

    下面通过具体实例演示TRUNCATE()函数的使用具体步骤如下: 

    【实例13-22】执行TRUNCATE()函数,获取截取操作后的数值,具体SQL语句如下:

    SELECT TRUNCATE(903.53567,2), TRUNCATE(903.53567, -1);

    【运行效果】执行上面的语句其结果如图所示。

     

    2.4 四舍五入函数

    在具体应用中有时候需要对数值进行四舍五入操作。通过ROUND()函数实现四舍五入操作。ROUND()函数的定义如下:

    ROUND(x)

    上述函数返回数值x经过四舍五入操作后的数值。

    ROUND(x,y)

    上述函数返回数值x保留到小数点后y位的值,在具体截取数值时需要进行四舍五入的操作。 

    下面通过具体实例演示ROUND()函数的使用,具体步骤如下:

    【实例13-23】执行ROUND()函数,获取四舍五入操作后的数值,具体SQL语句如下:

    SELECT ROUND(903.53567) ,ROUND(-903.53567),ROUND(903.53567,2),ROUND(903.53567,-1);

    【运行效果】执行上面的语句其结果如图所示。

     

    上述数值函数为用户最常用的函数,关于数值函数还有许多,感兴趣的学员可以查看相关资料继续学习。

    三、学习任务3:使用日期和时间函数

    除了字符串函数和数值函数外,日期和时间函数也是常用函数之一,MySQL软件所支持的常用日期和时间函数如表所示。

     常用日期和时间函数

    功能

    CURDATE()

    获取当前日期

    CURTIME()

    获取当前时间

    NOW()

    获取当前的日期和时间

    UNIX_TIMESTAMP(date)

    获取日期dateunix时间戳

    FROM_UNIXTIME()

    获取unix时间戮的日期值

    WEEK(date)

    返回日期date为一年中的第几周

    YEAR(date)

    返回日期的年份

    HOUR(time)

    返回时间time的小时值

    MINUTE(time)

    返回时间time的分钟值

    MONTHNAME(date)

    返回时间time的月份值

    3.1 获取当前日期和时间的函数

    在具体应用中,经常需要获取当前日期和时间。在MySQL软件中,不仅提供了获取当前日期和时间函数,而且还提供了获取当前日期的函数和当前时间的函数。下面将详细介绍实现这些功能的函数。

    1.获取当前日期和时间

    MySQL软件中可以通过4个函数获取当前日期和时间它们分别为NOW(), CURRENT_TIMESTAMP(),LOCALTIME()SYSDATE()函数。这4个函数不仅可以获取当前日期和时间,而且显示的格式也一样。不过在具体应用中,推荐使用NOW()函数。

    下面通过具体实例演示NOW(), CURRENT_TIMESTAMP(),LOCALTIME()SYSDATE()函数函数的使用具体步骤如下

    【实例13-24】执行SQL语句的相应函数,获取当前日期和时间,具体SQL语句如下:

    SELECT NOW() 'now方式',CURRENT_TIMESTAMP() 'timestamp方式',LOCALTIME() 'ldcaltime方式',SYSDATE()'systemdate方式';

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    2.获取当前日期

    MySQL软件中可以通过两个函数获取当前日期它们分别为CURDATE() CURRENT_DATE()函数。这两个函数不仅可以获取当前日期,而且显示的格式也一样。不过在具体应用中,推荐使用CURDATE()函数。

    【实例13-25】执行SQL语句的相应函数,获取当前日期,具体SQL语句如下:

    SELECT CURDATE() curdate方式,CURRENT_DATE() current_date方式;

     

    3.获取当前时间

    MySQL软件中可以通过两个函数获取当前时间,它们分别为CURTIME()和CURRENT_TIME()函数。这两个函数不仅可以获取当前时间,而且显示的格式也是一样。不过在具体应用中,推荐使用CURTIME()函数。

    【实例13-26】执行SQL语句的相应函数,获取当前时间,具体SQL语句如下:

    SELECT CURTIME() curtime方式,CURRENT_TIME() current_time方式;

     

    执行结果显示,CURTIME()和CURRENT_TIME()函数不仅成功获取当前时间,而且还以同一种格式显示时间。

    3.2 通过各种方式显示日期和时间

    在具体应用中,可以通过各种方式来显示日期和时间,最常用的方式为UNIXUTC本节将详细介绍显示日期和时间的这两种方式。

    1.通过UNIX方式显示日期和时间

    在MySQL软件中,可以使用UNIX方式显示时间。所谓Unix是Unix epochUnix timePOSEX timeUnix timestamp的缩写,中文为时间戳。根据ISO-8601规范,该方式将显示从1970 11日开始所经过的秒数。即一分钟表示为UNIX时间戳格式为:60秒,一小时表示为UNIX时间戳格式为:3600秒;一天表示为UNIX时间戳为86400秒。

    通过UNIX_TIMESTAMP()函数返回时间戳格式的时间FROM_UNIXTME()函数将时间戳格式时间转换成普通格式的时间。

    【实例13-27】执行SQL语句的相应函数,以UNIX格式显示时间,具体SQL语句如下:

    SELECT NOW() 当前时间,UNIX_TIMESTAMP(NOW()) unix格式,FROM_UNIXTIME(UNIX_TIMESTAMP(NOW())) 普通格式;

     

    UNIX_TIMESTAMP()函数没有参数传入时则会显示出当前曰期和时间的时间戳形式UNIX_TIMESTAMP()函数传入某个时间参数时则会显示出所传入时间的时间截形式。

    【实例13-28】执行SQL语句的相应函数,以UNIX格式显示当前时间,具体SQL语句如下:

    SELECT NOW() 当前时间,UNIX_TIMESTAMP() unix格式,UNIX_TIMESTAMP(NOW()) unix格式;

    【运行效果】执行上面的语句其结果如图所示。

     

    2.通过UTC方式显示日期和时间

    MySQL软件中,也可以使用UTC方式显示日期和时间。所谓UTCUniversal Coordinated Time的缩写,中文为国际协调时间。MySQL软件提供了两个函数UTC_DATE()和UTC_TIME()来实现日期和时间的UTC格式显示。

    【实例13-29】执行SQL相应函数,以UTC格式显示当前时间具体SQL语句如下:

    SELECT NOW() 当前日期和时间,UTC_DATE() UTC日期,UTC_TIME() UTC时间;

     

    执行结果显示,UTC_DATE()函数返回的日期与当前日期相同而该函数返回的时间却与当前时间相差几个时区。

    3.3 获取日期和时间各部分值

    可以通过各种函数来获取当前日期和时间的各部分值,其中YEAR()函数返回日期中的年份,QUARTER()函数返回日期属于第几个季度,MONTH()函数返回日期属于第几个月,WEEK()即函数返回日期属于第几个星期,DAYOFMONTH()函数返回日期属于当前月的第几天, HOUR()函数返回时间的小时,MINUTE()函数返回时间的分钟,SECOND()函数返回时间的秒。

    【实例13-30】执行SQL相应函数,演示获取日期和时间各部分的功能,具体SQL语句如下:

    SELECT NOW() 当前日期和时间,YEAR(NOW()) 年,QUARTER(NOW()) 季度,MONTH(NOW()) 月,WEEK(NOW()) 星期,DAYOFMONTH(NOW()) 天,HOUR(NOW()) 小时,MINUTE(NOW()) 分,SECOND(NOW()) 秒;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,可以通过各种函数获取曰期和时间的各部分值。

    1.关于月的函数

    MONTHO函数返回日期和时间中的月份,其取值范围为112,如果是1月将返回值1,如果是2月将返回2,以此类推。在具体显示月份时,经常不需要显示月份值,而是需要显示月份的英文名字。为了实现该功能,MySQL软件专门提供了MONTHNAME()函数返回月份的英文名字。下面将通过一个具体的实例来演示MONTH()和MONTHNAMEO函数的区别。

    SELECT NOW() 当前日期和时间,MONTH(NOW()) 月,MONTHNAME(NOW()) 月;

     

    执行结果显示MONTH()函数返回数字表示的月份MONTHNAME()函数返回了英文表示的月份。

    2.关于星期的函数

    WEEK()和WEEKOFYEAR()函数返回日期和时间中星期是当前年的第几个星期,其取值范围为153。在具体显示星期时,经常不需要实现上述功能,而是需要显示该天是星期几或其的英文名字。为了实现该功能,MySQL软件专门提供了三个函数,分别为DAYNAME()函数、DAYOFWEEK()函数和WEEKDAY()函数,它们的含义如下。

    • DAYNAME()函数:返回日期和时间中星期的英文名。
    • DAYOFWEEK()函数:返回日期和时间中星期是星期几,返回值的取值范围为17, 如果返回值是1则表示星期日;如果返回值是2则表示星期一,以此类推。
    • WEEKDAY()函数:返回日期和时间中星期是星期几,返回值的取值范围为06。如果返回值是0则表示星期一;如果返回值是1则表示星期二,以此类推。

    下面将通过一个具体的实例来演示DAYNAME()DAYOFWEEK()和WEEKDAY()函数的区别。

    SELECT NOW() 当前日期和时间,WEEK(NOW()) 年中第几个星期, WEEKOFYEAR(NOW()) 年中第几个星期,DAYNAME(NOW()) 星期,DAYOFWEEK(NOW()) 星期,WEEKDAY(NOW()) 星期;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    3.关于天的函数

    对于MySQL软件提供的DAYOFMONTH()函数返回日期属于当前月的第几天,有时候还需要显示属于当前年的第几天,为了实现该功能,MySQL软件专门提供了DAYOFYEAR()函数计算属于本年的第几天。下面将通过一个具体的实例来演示DAYOFMONTH()和DAYOFYEAR()函数的区别。

    SELECT NOW() 当前日期和时间,DAYOFYEAR(NOW()) 年中第几天,DAYOFMONTH (NOW()) 月中第几天;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,DAYOFYEAR()函数返回值表示是本年第几天,DAYOFMONTH()函数返回值表 示是本月第几天。

    4.获取指定值的EXTRACT()函数

    要获取日期和时间的各部分值,需要记住上述的各种函数,比较麻烦。于是MySQL软件又提供了一个EXTRACT()函数来统一获取日期和时间的各部分值。EXTRACT()函数的定义如下:

    EXTRACT(type FROM date)

    上述函数会从日期和时间参数date中获取指定类型参数type的值。关于type参数的取值可以是YEAR、MONTHDAY, HOUR, MINUTE和SECOND。

    下面将通过一个具体的实例来演示EXTRACT()函数的使用。

    SELECT NOW() 日期和时间,EXTRACT(YEAR FROM NOW()) 年,EXTRACT(MONTH FROM NOW()) 月,EXTRACT(DAY FROM NOW()) 天,EXTRACT(HOUR FROM NOW()) 小时,EXTRACT(MINUTE FROM NOW()) 分,EXTRACT(SECOND FROM NOW()) 秒;执

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示EXTRACT()函数可以获取曰期和时间的各部分值。

    3.4 计算日期和时间的函数

    MySQL软件中提供了两种类型的计算日期和时间函数,第一种类型为计算与默认日期和时间 (000011日)相互操作的函数;第二种类型为计算与指定日期和时间相互操作的函数。

    1.与默认日期和时间操作

    MySQL软件中提供了两个函数来实现与默认日期和时间的操作,分别为TO_DAYS()和 FROM_DAYS()。它们的作用分别如下,

    • TO_DAYS(date)函数该函数计算日期参数date与默认日期和时间000011之间相隔天数。
    • FROM_DAYS(number)函数该函数计算从默认日期和时间000011开始经历number天后的日期和时间。

    下面通过具体实例演示TO_DAYS() FROM_DAYS()函数的使用具体步骤如下

    【实例13-31】执行SQL相应函数,获取当前日期和时间与默认日期和时间之间间隔,具体SQL语句如下:

    SELECT NOW() 当前日期和时间,TO_DAYS(NOW()) 相隔天数,FROM_DAYS (TO_DAYS (NOW())) 一段时间后日期和时间;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示TO_DAYS()FROM_DAYS()函数实现与默认日期和时间的操作。在具有应用时,有时需要获取指定两个日期之间相隔天数,这时就需要MySQL软件提供的DATEDIFF()函数, 该函数的具体定义如下:

    DATEDIFF(date1,date2)

    上述函数会返回日期参数date1date2之间相隔天数。下面通过具体实例演示DATEDIFF()函数的使用具体步骤如下

    【实例13-32】执行SQL语句的相应函数,获取两个日期之间的相隔天数,具体SQL语句如下:

    SELECT NOW() 当前日期和时间,DATEDIFF(NOW(),'2000-12-01') 相隔天数;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,0八丁已0«^0函数返回所传入两个日期间隔天数。

    2.与指定日期和时间操作

    MySQL软件中提供了两个函数来实现与指定日期操作,分别为ADDDATE()和SUBDATE()函数,它们的作用分别如下。

    • ADDDATE(date,n)函数:该函数计算日期参数date加上n天后的日期。
    • SUBDATE(date,n)函数:该函数计算日期参数date减去n天后的日期。 

    下面通过具体实例演示ADDDATE()和SUBDATE()函数的使用具体步骤如下: 

    【实例13-33】执行SQL语句的相应函数,获取5天前后的日期,具体SQL语句如下:

    SELECT CURDATE() 当前日期,ADDDATE(CURDATE(),5)  5天后日期,SUBDATE(CURDATE(),5) 5天前日期 ;

    【运行效果】执行上面的SQL语句,其结果如图所示。

     

    ADDDATE()和SUBDATE()函数除了可以接受上述参数外,还可以接受其他参数,具体定义如下:

    ADDDATE(d, INTERVAL expr type)

    上述函数返回日期参数d加上一段时间后的日期,表达式参数expr决定了时间的长度,参数type决定了所操作的对象。

    SUBDATE(d,INTERVAL expr type)

    上述函数返回曰期参数d减去一段时间后的日期,表达式参数expr决定了时间的长度。参数type决定了所操作的对象。关于参数type的取值如表所示。

    表 参数type的值

    type的值

    expr表达式

    YEAR

    YY

    MONTH

    MM

    DAY

    DD

    HOUR

    小时

    hh

    MINUTE

    分钟

    mm

    SECOND

    ss

    YEAR_MONTH

    年和月

    YYMM之间用任意符号隔开

    DAY_HOUR

    日和小时

    DD与hh之间用任意符号隔开

    DAY_MINUTE

    日和分钟

    DD与mm之间用任意符号隔开

    DAY_SECOND

    日和秒

    DD与ss之间用任意符号隔开

    HOUR_MINUTE

    小时和分钟

    hhmm之间用任意符号隔开

    HOUR_SECOND

    小时和秒

    hh与ss之间用任意符号隔开

    MINUTE_SECOND

    分钟和秒

    mm与ss之间用任意符号隔开

    【实例13-34】执行SQL语句的相应函数,获取23个月后的日期,具体SQL语句如下:

    SELECT CURDATE() 当前日期,ADDDATE(CURDATE(),INTERVAL '2,3'YEAR_MONTH) 2年3个月后日期,SUBDATE(CURDATE(),INTERVAL'2,3'YEAR_MONTH) 2年3个月前日期 ;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    MySQL软件中,除了可以通过ADDDATE()和SUBDATE()函数来操作指定日期外,还可以ADDTIME()和SUBTIME()函数实现操作时间,它们的作用分别如下。

    • 函数ADDTIME(time,n):该函数计算时间参数time加上n秒后的时间。
    • 函数SUBTIME(time,n):该函数计算时间参数time减去n秒后的时间。

    下面通过具体实例演示ADDTIME()和SUBTIME()函数的使用,具体步骤如下: 

    【实例13-35】执行SQL语句的相应函数,获取5秒前后的时间,具体SQL语句如下

    SELECT CURTIME() 当前时间,ADDTIME(CURTIME(),5)  5秒后时间,SUBTIME(CURTIME(),5)  5秒前时间;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,ADDTIME()函数返回指定秒数后的时间,SUBTIME()函数返回指定秒数前的时间。

    上述日期和时间函数为用户最常用的函数,关于日期和时间的函数还有许多,感兴趣的学员可以查看相关资料继续学习。

    四、学习任务4:使用系统信息函数

    除了上述各种函数外,系统信息函数也是MySQL用户必须要掌握的函数之一。在MySQL软件中通过系统信息函数可以获取关于数据库和数据库对象的各种信息。

    MySQL软件所支持的常用系统信息函数如表所示。

     常用系统倍息函数

    作用

    VERSION()

    返回数据库的版本号

    DATABASE()

    返回当前数据库名

    USER()

    返回当前用户

    LAST_INSERT_ID()

    返回最近生成的人AUTO_INCREMENT

    4.1 获取MySQL系统信息

    MySQL软件中如果想获取MySQL系统信息,可以通过各种函数来实现。在具体应用中,经常需要获取的系统信息有MySQL软件版本号,数据库名和连接数据库用户名。下面通过具体实例演示如何获取MySQL系统信息,具体步骤如下:

    【实例13-36】执行MySQL软件相应函数,获取常用的系统信息,具体SQL语句如下:

    SELECT VERSION() 版本号,DATABASE() 数据库名,USER() 用户名;

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示,VERSION()函数返回MySQL软件的版本号,DATABASE()函数返回所选择的数据库名,USER()函数返回连接数据库的用户名。

    4.2 获取AUTO_INCREMENT约束的最后ID值

    MySQL软件中设计表时经常会设置一个名为ID的字段同时还会设置该字段为主键和自动增长AUTO_INCREMENT约束。在具体应用中,由于主键ID的值由MySQL软件来控制而不是用户来输入,所以有时候需要查看最后生成的具有AUTO_INCREMENT约束字段的值。

    为了实现上述功能,MySQL软件专门提供了LAST_INSERT_ID()函数。下面通过具体实例演示如何获取最后生成的具有AUTO_INCREMENT约束字段的值具体步骒如下

    【实例13-37

    (1)执行SQL语句CREATE TABLE,创建表t_autoincrement,具体SQL语句如下

    CREATE TABLE t_autoincrement (ID INT(11) NOT NULL AUTO_INCREMENT UNIQUE);

    (2)为了便于测试通过SQL语句INSERT INTO向表t_autoincrement中插入4条测试数据, 具体SQL语句如下

    INSERT into t_autoincrement values(null);

    INSERT into t_autoincrement values(null);

    INSERT into t_autoincrement values(null);

    INSERT into t_autoincrement values(null);

    (3)执行SQL语句中的LAST_INSERT_ID()函数获取自动增长最后生成的ID具体SQL 语句如下

    select LAST_INSERT_ID();

    【运行效果】执行上面的SQL语句其结果如图所示。

     

    执行结果显示已经成功获取最后生成值。

    4.3 其他函数

    MySQL软件除了提供上述常用函数外还提供了许多其他函数。它们分别为流程函数和实现特殊功能函数。

    在具体应用中,用户可以通过流程函数实现条件选择,这样就能够提高SQL语句执行效率。MySQL软件支持的流程函数如表所示。

    表 流程函数

    函数

    作用

    IF(value,str1,str2)

    如果value此为真,返回str1,否则返回str2

    IFNULL(value1, default)

    如果value1不为空返回实际值,否则返回default

    CASE WHEN [value1] THEN[result1]...ELSE [default] END

    如果value1为真,返回result1,否则返回default

    CASE [expr]WHEN[value1] THEN[result1]... ELSE[default] END

    如果expr等于value1,返回result1,否则返回default

    以t_employee为例:

    (1)select ename,if(sal>3000,'rich','poor') as 工资判断 from t_employee;

     

    (2)select ename,ifnull(comm,'级别过低,没有津贴') from t_employee;

     

    (3)select ename,(case when comm=0 or comm is null then '待定' else comm end) as 判断 from t_employee;

     

    (4)select ename,(case 30 when deptno then '优秀' else '努力中' end) as 判断 from t_employee;

     

    MySQL软件还支持实现特殊功能的函数,如下表所示。

     实现特殊功能的函数

    作用

    PASSWORD(str)

    实现对字符串str进行加密

    FORMAT(x,n)

    实现将数字x进行格式化,保留n位小数

    INET_ATON(ip)

    实现将IP地址转换成数宇

    INET_NTOA(x)

    实现将数字转换成IP

    GET_LOCT(name,time)

    创建一个持续时间为time的名为name的锁

    RELEASE_LOCT(name)

    为名name的锁进行解锁

    BENCHMARK(count,expr)

    实现将表达式重复执行count

    C0NVERT(s USING cs)

    实现将字符串s的字符集变成cs

    CONVERT(x,type)

    实现将x变成¥类型

    Password可以参考博客详解MYSQL数据库密码的加密方式及破解方法_小强快跑~~-CSDN博客 

    更多方法请参考mysql数据库-常用函数_caodongfang126的博客-CSDN博客

    展开全文
  • 主要为大家介绍了帝国CMS核心文件e/class/connect.php中的常用函数,对于进行二次开发很有参考价值,需要的朋友可以参考下
  • MYSQL常用函数总结

    千次阅读 2022-03-26 09:56:23
    第一部分 MYSQL中常用的函数 (PS:总结的有点潦草,适合有一定基础的总结性学习) 一、排序函数 RANK():1,1,3 在计算排序时,若存在相同的位次,会跳过之后的位次 DENSE_RANK():1,1,2 在计算排序时,若存在...

    第一部分 MYSQL中常用的函数

    (PS:总结的有点潦草,适合有一定基础的总结性学习)

    一、排序函数

    RANK():1,1,3 在计算排序时,若存在相同的位次,会跳过之后的位次

    DENSE_RANK():1,1,2 在计算排序时,若存在相同的位次,不会跳过之后的位次

    ROW_NUMBER():1,2,3 这个函数赋予唯一的连续位次

    二、日期函数

    DATEDIFF(data1,date2):date1-date2

    DATE_FORMAT(date,format):日期格式转换

    TIMESTAMPDIFF(second/minute/hour/day/week/month,date1,date2):date2-date1

    DATE_ADD(curdate(),interval 1 day):返回当前日期增加1天后的日期

    DATE_SUB(curdate(),interval 1 day):返回当前日期减少1天的日期

    YEAR(date1)、MONTH(date1) 、DAY(date1):返回年、月、日 。例如:DAY(‘2021-08-02’):返回的是2

    LAST_DAY(date1):返回当月的最后一天 。例如:LAST_DAY(‘2021-08-02 11:41:01’) 返回:2021-08-31

    [小tips:DAY(LAST_DATE(date1))返回这个月的天数]

    三、字符串函数

    ——转换

    Lcase(str):将字符串str的所有字母变成小写字母

    Ucase(str):将字符串str的所有字母变成大写字母

    ——计算长度

    Length(str):计算str的长度

    Char_length():计算字符串的长度

    ——位置

    Locate(substr,str):返回子串substr在字符串中第一次出现的位置,如果子串substr在字符串str中不存在,则返回0;

    POSITION(substr IN str):返回子串substr在字符串str中第一次出现的位置,如果字符substr在字符串中不存在,与locate函数作用一样。

    ——截取

    Right(s,n):返回字符串s的后n个字符

    Left(s,n):返回字符串s的前n个字符

    Mid(s,n,len):返回从字符串s的n位置截取的长度为len的子字符串,同substring(s,n,len)

    Substring_index(str,n,m):返回字符串str从第n个字符截取到第m个字符

    Substring_index(str,separator,count),截取count个分隔符之前的字符串,如果count为正,则从左边开始截取,如果count为负,则从右边开始截取

    Replace(str,n,m):将字符串str中的第n个字符替换成m字符

    Replace(s,s1,s2):替换函数,用s2替换s中的s1

    ——连接

    group_concat([DISTINCT] 要连接的字段 [Order BY  排序字段 ASC/DESC] [Separator '分隔符'])  这个函数必须和group by语句一起使用,将goup by产生的一个分组中的值连接起来,返回一个字符串结果

    CONCAT_WS(’分隔符‘,str1,str2) 第一个参数为分隔符,相比于concat函数可以一次性指定分隔符

    CONCAT(str1,str2,...) :将多个字符串连接成一个字符串

    ——去除空格

    Rtrim():去除字符串右端空格

    Ltrim():去除字符串左端空格

    Trim():去除字符串两端空格

    ——匹配

    Like 完全匹配

    Rlike 不完全匹配,只要字段中的值存在要查找的部分,就会被选择出来

    Regexp 不完全匹配

    . 匹配任意单个字符 

    * 匹配0个或者多个前一个得到的字符

    [] 匹配任意一个[]内的字符

    ^ 匹配开头

    $ 匹配结尾

    {n} 匹配前一个字符反复n次

    [^abc] [!abd] 不包含括号中的字符

    a|b|c 匹配a或者b或者c

    四、分析函数

    LEAD(x)、LAG(x):分别返回传入的列x对于当前行的 下一行/前一行 的值

    LEAD(x,y)、LAG(x,y):分别返回传入的列x对于当前的 后y行/前y行 的值

    First_Value(x)、Last_value(x):分别返回列x的 第一个值/最后一个值

    Nth_value(x,n):返回x列的第n个值

    注意:last_value nth_value 通常需要把window frame 修改成 rows between unbounded preceding and unbounded following

    五、其他函数

     Ceil(x):返回大于或者等于x的最小整数

    Floor(x):返回小于或者等于x的最大整数

    CAST(expression AS date_type)将一种数据类型显示转换成另一种数据类型,可转换的数据类型为:二进制binary、字符型char、日期date、时间time、日期和时间datetime、浮点数decimal、整数signed、无符号整数unsigned。在创建表格的时候,

    SELECT * FROM 表名 LIMIT 3,1;          #从第4条数据开始取数,取1条数据,即只取第四条
    SELECT * FROM 表名 LIMIT 1 OFFSET 3;   #从第4条数据开始取数,取1条数据,即只取第四条
    SELECT * FROM 表名 LIMIT 3,2;          #从第4条数据开始取数,取2条数据,即取第4条,第5条
    SELECT * FROM 表名 LIMIT 2 OFFSET 3;   #从第4条数据开始取数,取2条数据,即取第4条,第5条

    LIMIT1 OFFSET2:从第3条数据开始取数,返回1条记录,类似于LIMIT 2,1

    LIMIT1,3  :分页,从第2条记录开始,返回3条记录,类似于LIMIT 3 OFFSET 1

    IF(true,a,b):IF 函数,如果为真,则返回a,否则,返回b

    IFNULL(expression1,expression2): 如果expression1不为null,则返回expression1,否则返回expression2

    展开全文
  • 目录 1、求组合数 2、求阶乘 3、求全排列 4、求指数 5、求行列式 6、求矩阵的转置 7、求向量的指数 8、求自然对数 9、求矩阵的逆矩阵 ...22、适用于向量的常用函数 23、MATLAB的永久常数 24、
  • matlab符号函数定义

    千次阅读 2021-04-18 16:25:27
    matlab符号函数定义: 关于函数符号的介绍,缺失:matlab符号定义3698/9约翰.伯努利於1694年首次提出函数(function)概念,并以字母 n 表示变量 z 的一个函数;至 1697年,他又以大写字母 X 及相应之希腊字母 ξ表示...
  • matlab符号运算函数大全,讲述常用的matlab符号运算函数,包括solve等一系列运算函数
  • C语言常用函数用法大全

    千次阅读 2021-05-18 15:17:46
    C语言是当中广泛的计算机编程语言,是所有计算机编程语言的祖先,其他计算机编程语言...在C语言学习过程当中,除了学习好C语言基本语法外,掌握常用的C语言库函数的使用也是非常重要的,本文主要给同学们详细讲解在...
  • EXCEL常用函数之统计函数

    千次阅读 2022-03-13 15:04:31
    注:Excel中所用所有标点符号均为英文格式下的标点符号。 (3)参数 value1:必需参数,表示计算其中数字个数的第一个参数,可以是直接输入的数字,也可以是单元格引用或数组。 [value2]:可
  • Mysql最常用的十大函数

    千次阅读 2021-02-19 09:26:06
    解 析:需要连接的字段用逗号分隔开来,自定义的拼接符号使用单引号包裹,也使用逗号分隔 注 意:这个函数需要注意的是,如果有一列值为空,那么这一列拼接的结果都会为null,为了避免这样的状况发生,需要在可能...
  • MySQL常用函数大全(总结篇)

    万次阅读 多人点赞 2019-02-19 14:08:33
    本篇文章讲解是是MySQL的函数方法,涵盖所有的MySQL常见的方法。下面是本篇文章的目录结构,可以根据自己需求划到相应段落查找: 一、数字函数 二、字符串函数 三、日期函数 四、MySQL高级函数 (一)数字函数 1、...
  • python常用函数整理

    千次阅读 2020-06-30 15:43:35
    使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from ast import literal_eval str_list = "[1838, 13735, 8285, 35386]" mylist = literal_eval(str_list) type(mylist ) ...
  • 常用工具箱 MATLAB包括拥有数百个内部函数的主包和三十几种工具包工具包又可以分为功能性工具包和学科工具包功能工具包用来扩充MATLAB的符号计算 可视化建模仿真文字处理及实时控制等功能学科工具包是专业性比较强的...
  • c语言中常用函数和头文件

    千次阅读 2021-05-21 10:14:51
    头文件ctype.h函数列表函数类别函数目的详细说明字符测试为字符和数字的isalnum是否为isalpha字符是否控制字符iscntrl是否为数字isdigit是否能够显示文字(空格除外) isgraph是否可以显示字符(包括空格) isprint非...
  • R语言入门——常用函数50个

    千次阅读 多人点赞 2021-09-05 12:41:55
    R语言函数入门50个基本函数0引言1、入门准备操作及函数1.1R版本介绍以及IDE的选择1.2IDE及其常用的快捷键2、空间操作以及纠错函数2.1 ? 、??、help、demo、example2.2 ls()2.3 getwd()、setwd()2.4 其他函数2.5...
  • 常用数学符号大全(注音及注解)

    千次阅读 2021-07-29 00:14:02
    数学符号及读法大全常用数学输入符号: ≈ ≡ ≠ = ≤≥ < > ≦ ≧ ∷ ± + - × ÷ / ∫ ? ∝ ∞ ? ? ∑ ∏ ∪ ∩ ∈ ∮ ? // ? ‖ ∟ ? ≌ ∽ √ () 【】 {} Ⅰ Ⅱ ⊕ ?∠α β γ δ ε δ ε ζ Γ第1页...
  • R语言常用函数整理

    千次阅读 多人点赞 2020-10-21 08:45:43
    R语言常用函数整理本篇是基础篇,即R语言自带的函数。 一、数据管理 vector:向量 numeric:数值型向量 logical:逻辑型向量 character;字符型向量 list:列表 data.frame:数据框 c:连接为向量或列表 length:求...
  • PPT,物理光学教程,非初等函数,如门函数,三角函数符号函数,阶跃函数,高斯函数,sinc函数,及他们的平移,反转,四则运算,傅里叶变换等操作。二维初等函数,光学常用的特殊函数,如贝塞尔函数
  • 常用损失函数

    千次阅读 2019-03-31 17:09:16
    1、logloss对数损失函数 对数损失, 即对数似然损失(Log-likelihood Loss), 也称逻辑斯谛回归损失(Logistic Loss)或交叉熵损失(cross-entropy Loss), 是在概率估计上定义的.它常用于(multi-nominal, 多项)逻辑斯谛...
  • sql常用函数大全

    万次阅读 多人点赞 2018-04-09 13:59:52
    转载自:https://blog.csdn.net/mrtwofly/article/details/53939400一、数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x) 返回大于x的最小整数值EXP(x) 返回值e...
  • matlab常用符号

    千次阅读 2021-04-20 04:14:52
    MATLAB中常见的定义:help 在线帮助命令, 如用help plot调用命令函数plot的帮助说明;对于不懂的命令由此来查看文档who 列出所有定义过的变量名称,关注变量ans 最近的计算结果的变量名,从而直接来看上执行的结果...
  • 字符串常用函数大全

    千次阅读 2020-12-04 20:43:18
    众所周知,C语言里面有很多额字符串函数。那么,如何高效合理地运用好这些函数是一个难点,下面我就来给大家说说我是如何理解这些字符串函数的。 在介绍字符串函数之前,我们先来给这些个字符串函数分一下类。 .....
  • MySQL常用函数MySQL 数值型函数MySQL 字符串函数MySQL 日期和时间函数MySQL 聚合函数MySQL 流程控制函数1、字符串函数2、数学函数3、时期时间函数4、转换函数 MySQL 函数会对传递进来的参数进行处理,并返回一个...
  • Spark SQL常用函数 函数分类及其简介

    千次阅读 2019-11-27 15:11:06
    Spark SQL函数 一、概述 1、来源: 本文总结自spark 2.3.1 API文档 org.apache.spark.sql:object functions; 2、使用: org.apache.spark.sql.functions中提供了约两百多个函数,大部分函数与Hive中类似,除...
  • vb常用函数一览表

    万次阅读 2018-08-05 17:10:29
    常用内部函数 数学函数 函数

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 325,251
精华内容 130,100
关键字:

常用函数符号