Mysql之运算符与函数的总结
技术百科
黄舟
发布时间:2017-09-20
浏览: 次 本文给大家汇总介绍了mysql中的常用的运算符以及常用函数的用法及示例,非常的全面,有需要的小伙伴可以参考下
我们先来看个示例
use test; create table `employee`( emp_no int unsigned, emp_name varchar(30), emp_sex varchar(3), emp_age tinyint unsigned, sal double, history datetime ); insert into employee values(1, '张三', '男', 18, 5000, '2012-04-23'), (2, '李四', '男', 27, 4500, '2013-05-23'), (3, '王五', '男', 23, 4700, '2012-04-21'), (4, '子龙', '男', 19, 3800, '2011-03-04'), (5, '李白', '男', 15, 6200, '2015-09-09'), (6, '刘备', '男', 28, 2500, '2016-02-11'), (7, '吕布', '男', 21, 6000, '2010-10-18'), (8, '尚香', '女', 16, 4500, '2011-09-26'), (9, '小乔', '女', 15, null, '2013-07-05'), (10, '大乔', '女', 16, 5000, '2017-09-01');
常用的运算符:
1: 等于( = )
select * from employee where sal = 3800; select * from employee where sal = null; --这里查询不到为null的数据
2: 等于( )
select * from employee where sal <=> 3800; select * from employee where sal <=> null; --这里可以查询到为null的数据
3: is判断(null)
select * fromemployee where sal is null; select * from employee where sal is not null;
4: null值判断还可以使用isnull();
select * from employee where isnull(sal); select * from employee where !isnull(sal);
5: 在区间(between)内 between min and max ps:这里是一个闭区间
select * from employee where sal between 4500 and 5000;
6: 不在区间内
select * from employee where sal not between 4500 and 5000; --null不为包括进去
7: and 和 or
select * from employee where sal not between 4500 and 5000 or sal is null; select * from employee where sal = 4500 and emp_sex = '女';
8: 小于(), 小于等于(=)
select * from employee where sal >= 4500;
***************************************************************************************************************
数学函数
1: rand();
select rand() from dual; --dual是一个伪表 select 1+1 from dual; select rand(); --可以简写
2: least(value1, value2, ...) 返回最小值
select least(54,76,4,65,76,87,87,56,65,654,45,23,1,76); select least(54,76,4,65,76,87,87,56,65,654,45,23,1,76) as min_value; --列名可以起一个别名
3: greatest(value1, value2, ...) 返回最大值
select greatest(54,76,4,65,76,87,87,56,65,654,45,23,1,76);
4: round(M, D); 返回M的四舍五入的值, D表示要保留几们小数,默认值是0
select round(1.69); select round(1.69, 1);
5: abs() 绝对值
select 5-10; select abs(5-10);
***************************************************************************************************************
汇总函数
1: avg();
select * from employee where sal >= 6000; select avg(sal) from employee where sal >= 6000;
2: count()
select count(*) from employee; select count(emp_name) from employee; select count(sal) from employee; --打印9 这里会忽略null值 select count(*) from employee where sal >= 4000; select count(*) from employee where sal <= 4000 or sal is null;
3: sum()
select sum(sal) from employee where sal >= 6000;
4: min()
select min(sal) from employee;
5: max()
select max(sal) from employee;
***************************************************************************************************************
日期函数
1: 获取当前的日期时间
select now(), sysdate(), current_timestamp();
select now(6), sysdate(6), current_timestamp(6);
ps: now(), current_timestamp();没有区别, 表示sql开始执行时的时间
sysdate()表示这个函数开始时间2: 获取当前日期
select curdate(); --只有年月日
3: 获取当前时间
select curtime(); --只有时分秒
4: 日期的加运算date_add
select history, date_add(history, interval '1 12:10' day_minute) from employee; --date_add(history, interval '1 12:10' day_minute) select history, date_add(history, interval '1-1' year_month) from employee; --date_add(history, interval '1-1' year_month) select history, date_add(history, interval '1' second) from employee; --date_add(history, interval '1' second)
5: 日期的减运算data_sub
select history, date_sub(history, interval '1-1' year_month) from employee;
6: 计算日期差
select history, sysdate(), datediff(sysdate(), history) from employee; --以天数来表示
7: 获取日期的指定部分(把日期转换为指定的格式) date_format()
select history, date_format(history, '%Y年%m月%d号') from employee; select history, date_format(history, '%d号') from employee; select history, date_format(history, '%Y年%m月%d号 %H时%i分%s秒') from employee;
8: 计算出一个日期是星期几
select history, dayname(history) from employee;
9: 中文日期字符串转换日期str_to_date()
insert into employee values(11, '张飞', '男', 22, 3000, '2017年02月01号'); --报错
insert into employee values(11, '张飞', '男', 22, 3000, str_to_date('2017年02月01号', '%Y年%m月%d号 %H时%i分%s秒')); insert into employee values(12, '二哥', '男', 22, 3000, str_to_date('2017年02月01号 23时02分02秒', '%Y年%m月%d号 %H时%i分%s秒'));
insert into employee values(12, '二哥', '男', 22, 3000, str_to_date('2017年02月01号 11时02分02秒', '%Y年%m月%d号 %h时%i分%s秒'));
ps: 如果是h则表示12小制, 如果是大H则表示24小明制;
字符串函数
1: left(str, len) 返回字符串str的左端len个字符
select left('abcdefg', 5);2: length()
select length('abcdefg');3: lower(str) 返回小写的字符串str
select lower('HELLO');4: substring() 取子字符串, 第二个参数是截取的起始位置, 第三个参数是要截取的长度
select substring('helloworld',2,3);5: concat() 字符串拼接
select concat(emp_name, '员工') from employee;
6: replace(替换
select replace(emp_name, '李', '老') from employee where emp_name = '李四';
# 是一个
# 还可以
# 第三个
# 给大家
# 第二个
# 报错
# 运算符
# 左端
# mysql
# 李四
# 不为
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- Win10电脑怎么设置IP地址_Windows10
- VSC怎样在Linux运行PHP_Ubuntu系统
- Python列表推导式与字典推导式教程_简化代码高
- Win11怎么设置夜间模式_Windows11显示
- Win11此电脑不在桌面上_Windows 11桌
- 如何使用Golang开发简单的聊天室消息存储_Go
- Win11怎么设置桌面图标间距_Windows11
- php做exe支持多线程吗_并发处理实现方式【详解
- php中$this和::能混用吗_对象与静态作用域
- 如何用列表一次性对 DataFrame 的指定列应
- 如何在 Go 同包不同文件中正确引用结构体
- 如何使用Golang进行HTTP服务性能测试_测量
- 如何更改Windows资源管理器的默认启动位置?(
- Windows11怎么自定义任务栏_Windows
- php怎么下载安装并配置环境变量_命令行调用PHP
- LINUX如何查看文件类型_Linux中file命
- 如何使用Golang实现聊天室消息存档_存储聊天记
- Win11怎么更改鼠标指针_Windows 11自
- Windows10如何更改系统字体大小_Win10
- Mac的“调度中心”与“空间”怎么用_Mac多桌面
- Mac如何彻底清理浏览器缓存?(Safari与Ch
- c++如何连接Redis c++ hiredis库
- 如何在Golang中实现基础配置管理功能_Gola
- Win11怎么更改默认打开方式_Win11关联文件
- Avalonia如何实现跨窗口通信 Avaloni
- Win11怎么用设置清理回收站_Win11设置清理
- Win11怎么关闭小组件_Win11禁用任务栏天气
- Python函数缓存机制_lru_cache解析【
- 如何解决同一段404代码在不同主机上表现不一致的问
- Python对象比较与排序_集合使用说明【指导】
- Win11怎么禁用键盘自带键盘_Win11笔记本禁
- Mac自带的词典App怎么用_Mac添加和使用多语
- php嵌入式日志记录怎么实现_php将硬件数据写入
- Win11应用商店下载慢怎么办 Win11更改DN
- Go 中 := 短变量声明的类型推导机制详解
- Mac怎么进行语音输入_Mac听写功能设置与使用【
- Windows10蓝屏SYSTEM_SERVICE
- Win10怎么卸载金山毒霸_Win10彻底卸载金山
- Win11如何连接Xbox手柄 Win11蓝牙连接
- Windows10系统怎么查看显卡驱动_Win10
- C#如何序列化对象为XML XmlSerializ
- Win11讲述人怎么关闭_Win11误触开启语音朗
- 如何在Golang中实现RPC异步返回_Golan
- Win11怎么关闭专注助手 Win11关闭免打扰模
- php中self::能调用子类重写的方法吗_静态绑
- 如何使用Golang处理静态文件缓存_提高页面加载
- 如何有效拦截拼接式恶意域名的垃圾信息
- c++怎么使用类型萃取type_traits_c+
- C++中的Pimpl idiom是什么,有什么好处
- php下载安装后swoole扩展怎么安装_异步框架

employee where sal is null;
select * from employee where sal is not null;
QQ客服