请选择 进入手机版 | 继续访问电脑版

湖南新梦想

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 186|回复: 0

mysql的函数

[复制链接]

45

主题

46

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 2022-9-22 22:25:19 | 显示全部楼层 |阅读模式
函数:
        字符串
                length()取字符串的字节数 mysql中一个汉字占三个字节  生僻字可能占四个字节
                        没有保存到表里的汉字占2个字节
                        课后练习 ?取得字符个数的函数
                        select name,length(name)from stu;//查询名字的字节数
                left(str,n)//截取字符串str的左边n位
                        select name ,left(name,n)from stu;
                right(str,n)//截取字符串str的右边n位
                        select name ,rigth(str,n)from stu;
                substr(str,s,n)//截取字符串str的第s(包含s)位到n位
                        substring
                concat (str1,str2)//拼接srt1和str2 可以拼接多个
                        select concat_ws(“#”,str1,str2)//拼接时前方添加#
                trim()/ltrim()/rtrim() 剃除空格
                replace(str,str1,str2)//从str中找到str1 替换成str2;
                数据类型转换
                        convert(123,char)//将123转换成字符串
               
        数值
                取整
                        向上四舍五入
                        select ceil(10.3)//取整为11
                        select ceil(10.0)//取整为10
                        向下四舍五入
                        select floor(10.9)//取整为10
                        select floor(10.0)//取整为10
                        四舍五入
                        select round(10.4)///取整为10
                        select round(10.5)//取整为11
                        truncate(f,n) 将小数f保留到n位,超出n位的数据抛弃
                        select truncate(10.123,2)//取值为10.12
        日期
                now()//取服务器当前的系统时间
                        curdate()//只取服务器当前系统时间的日期不取时间
                        curtime()//只取服务器前期系统时间的时间不取日期
                year(日期)//取年份
                year(now())//取出服务器前期系统时间的年份
                month(now())//取出服务器前期系统时间的月
                day(now())//取出服务器前期系统时间的日
                hour(now())//取出服务器前期系统时间的小时
                minute(now())//取出服务器前期系统时间的分钟
                second(now())//取出服务器前期系统时间的秒
                date_add(now(),interval 10 day)//将时间往后推10天
                date_add(now(),interval -10 day)//将时间往前推10天
                dayname(日期)计算日期所对应的星期几
                datediff(日期1,日期2)//日期1和日期2相差多少天
               
        分组函数
                聚合函数 5个:对多个数据进行处理得到单一的结果
                        max()//最大值 数值型 日期 字符串
                        min()//最小值 数值型 日期 字符串
                        avg()//平均值 数值型
                        sum()//合计 数值型
                        count()//计次/个数  不区分数据类型
                        自动过滤空值
                分组:按类型分组
                        * select 列表中如果同时出现聚合函数(单个)和多值数据(字段),则必须带上分组语句
                        则必须带上分组group by语句,将多值数据(字段)放在group by语句中
                        select count(*),sex from stu group by sex

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|湖南新梦想 ( 湘ICP备18019834号-2 )

GMT+8, 2023-9-22 10:09 , Processed in 0.037974 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表