MySQL--dql(数据查询语言)

dql

DQL(Data Query Language)数据查询语言查询是使用频率最高的一个操作,可以从一个表中查询数据,也可以从多个表中查询数据。

  • 基础查询

语法:

  • select 查询列表 from 表名;

特点:

  • 查询列表可以是:表中的字段、常量、表达式、函数
  • 查询的结果是一个虚拟的表格

查询结果处理

  • 查询常量值 SELECT 100;
  • 查询表达式:select 100*98;
  • 查询函数:select 函数; / 例如version()
  • 特定列查询:select column1,column2 from table
  • 全部列查询: select * from table
  • 排除重复行: select distinct column1,column2 from table
  • 算数运算符:+ - * /

函数:类似于java中的方法,将一组逻辑语句事先在数据库中定义好,可以直接调用
好处:

  • 隐藏了实现细节
  • 提高代码的重用性
    调用:select 函数名(实参列表) [from 表];
    分类:
  • 单行函数:如concat、length、ifnull等
  • 分组函数:做统计使用,又称为统计函数、聚合函数、组函数

字符函数

  • length():获取参数值的字节个数
  • char_length()获取参数值的字符个数
  • concat(str1,str2,…):拼接字符串
  • upper()/lower():将字符串变成大写/小写
  • substring(str,pos,length):截取字符串 位置从1开始
  • instr(str,指定字符):返回子串第一次出现的索引,如果找不到返回0
  • trim(str):去掉字符串前后的空格或子串,trim(指定子串 from 字符串)
  • lpad(str,length,填充字符):用指定的字符实现左填充将str填充为指定长度
  • rpad(str,length,填充字符):用指定的字符实现右填充将str填充为指定长度
  • replace(str,old,new):替换,替换所有的子串

逻辑处理

case when 条件 then 结果1 else 结果2 end; 可以有多个when
ifnull(被检测值,默认值)函数检测是否为null,如果为null,则返回指定的值,否则返回原本的值
if函数:if else的效果 if(条件,结果1,结果2)

数学函数

  • round(数值):四舍五入
  • ceil(数值):向上取整,返回>=该参数的最小整数
  • floor(数值):向下取整,返回<=该参数的最大整数
  • truncate(数值,保留小数的位数):截断,小数点后截断到几位
  • mod(被除数,除数):取余,被除数为正,则为正;被除数为负,则为负
  • rand():获取随机数,返回0-1之间的小数

日期函数

  • now():返回当前系统日期+时间
  • curdate():返回当前系统日期,不包含时间
  • curtime():返回当前时间,不包含日期

可以获取指定的部分,年、月、日、小时、分钟、秒 YEAR(日期),MONTH(日期),DAY(日期) ,HOUR(日期) ,MINUTE(日期) SECOND(日期)

  • str_to_date:将日期格式的字符转换成指定格式的日期
    SELECT STR_TO_DATE(‘1998-3-2’, ‘%Y-%m-%d’);
  • date_format:将日期转换成字符串
    SELECT DATE_FORMAT(NOW(), ‘%y年%m月%d日)’) AS output ;
  • datediff:返回两个日期相差的天数

日期格式

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值