2019.3.25 SQL语句(进阶篇1)
运算符
基本的加减乘除取余都可以在SQL中使用
新建Employee1表并添加数据
create table Employee1
(eid int primary key auto_increment,
name varchar(20),
age int,
salary int,
depart varchar(50),
workage int);
insert into employee1
values (null,'张三',30,10000,'研发部',3),
(null,'李四',22,5000,'市场部',2),
(null,'王五',29,6000,'营销部',3),
(null,'赵六',28,4000,'营销部',3),
(null,'钱七',26,12000,'研发部',4),
(null,'张四',32,9000,'人事部',4),
(null,'张五',22,4500,'策划部',1),
(null,'张六',23,5000,'市场部',2),
(null,'李三',19,3000,'研发部',1),
(null,'李五',26,6000,'人事部',2),
(null,'王三',42,18000,'研发部',20),
(null,'王四',31,13000,'人事部',9),
(null,'王六',27,7000,'人事部',5),
(null,'赵三',23,3500,'市场部',2),
(null,'赵四',36,11000,'策划部',11),
(null,'赵五',25,4000,'人事部',2),
(null,'钱三',24,6000,'研发部',2),
(null,'钱四',44,14000,'策划部',4),
(null,'钱五',32,9000,'市场部',8),
(null,'钱六',50,2000,'研发部',30);
as:修改列名/表名(可隐藏)
select salary/2 as result, salary s
from Employee1;
图太长了截一半了

比较运算符:= > < >= <=
is null/is not nul :l判断是否为空
select *
from Employee1
where depart is not null;

=/<=>:判断两个值是否相等
<=>可以判断两个空值相等
select null <=> null ;

between...and....:在...之间
select *
from Employee1
where salary between 6000 and 12000;

in/not in:是否存在
select *
from Employee1
where depart in ('市场部','人事部');

like:模糊查询
select *
from Employee1
where name like '张%'; //%后面只是占位 不算位数 代表一串字符
select *
from Employee1
where name like '张_'; //_代表一个字符
因为我的表里只有两个字的名字 所以_和%查出的东西是一样的

逻辑运算符
and &&
or ||
not !
xor 异或
& 位与
| 位或
^ 位异或
<< 位左移
位右移
-位取反
函数
常用函数
CONCAT(): 字符串拼接
select CONCAT('我是',name,depart)
from Employee1;

LOWER/UPPER(): 大小写改变
select LOWER('ASERDFTY');
select UPPER('qwertyyu');


INSERT():字符串替换
select INSERT('这是一个字符串',3,5,'试试'); //从第3个开始截5个

SUBSTRING(): 截取子字符串
select SUBSTRING('这是一个字符串',3,5);

CEIL():向上取整
select CEIL(3.3);

FLOOR():向下取整
select FLOOR(3.3);

rand():生成随机数
select rand();

聚合函数
AVG():取平均值
select AVG(salary)
from Employee1;

SUM():求和
select SUM(salary)
from Employee1;

MAX()/MIN():求最大值最小值
select MAX(salary)
from employee1;

select MIN(salary)
from employee1;

COUNT():求数量
select salary,COUNT(*)
from Employee1;

2019.3.25 SQL语句(进阶篇1)的更多相关文章
- 2019.3.25 SQL语句(进阶2)
子查询 数据库中的表沿用 上一篇博客 中使用的Employee1. 练习: 1.求所有年龄比张三小的人 select * from Employee1 where age < (select a ...
- 2019.3.22 SQL语句(基础篇)
SQL语句 创建一个数据库: create database+数据库名; 使用数据库: use+数据库名; 查看mySQL中有哪些数据库: show databases; 删除数据库 drop dat ...
- 【目录】sql server 进阶篇系列
随笔分类 - sql server 进阶篇系列 sql server 下载安装标记 摘要: SQL Server 2017 的各版本和支持的功能 https://docs.microsoft.com/ ...
- sql语句进阶教程
转载自:http://blog.csdn.net/u011001084/article/details/51318434 最近从图书馆借了本介绍SQL的书,打算复习一下基本语法,记录一下笔记,整理一下 ...
- 一些能体现个人水平的SQL语句[总结篇]
作为一名小小的开发人员,刚入门的时候觉得很难,过了一段时间之后,发现很简单,很快就可以搞定很bug了.然而这并不能说明你就已经很牛掰了,只能说,你不了解其他太多的东西.应该说,数据库有几个共同的命令, ...
- Sql效能优化总结(续)- sql语句优化篇
今晚继续进行Sql效能问题的分享,今天主要是一些具体的sql优化方法和思路分享,若看过后你也有其他想法,欢迎一起探讨,好了,进入今天的主题. 针对性地对一些耗资源严重的具体应用进行优化 出现效能问题时 ...
- Magento用SQL语句开发篇
有时为了调试magento,需要获取当前的查询sql语句,在magento中获取SQL语句,这里我们通过$collection->getSelectSql(true)来调试sql 1 $coll ...
- 2019.3.26 SQL语句(进阶3)
表的联查 员工表与部门表 员工表:id,姓名,年龄,部门id 部门表:部门id,部门名,部门成立时间,部门领导,部门职责.... 表和表之间的关系 一对一 一对多 多对多 创建联查 创建表 先创建被依 ...
- mysql数据库基础SQL语句总结篇
常用的sql增删改查语句 创建数据库:create database db_name character set utf8;删除数据库:drop database db_name;切换数据库:use ...
随机推荐
- 9.TOP 子句--mysql limit
TOP 子句 TOP 子句用于规定要返回的记录的数目. 对于拥有数千条记录的大型表来说,TOP 子句是非常有用的. 注释:并非所有的数据库系统都支持 TOP 子句. MySQL 语法 SELECT c ...
- Luogu 3665 [USACO17OPEN]Switch Grass 切换牧草
BZOJ 4777 被权限了. 这道题的做法看上去不难,但是感觉自己yy不出来. 首先是两个结论: 1.答案一定是连接着两个异色点的一条边. 2.答案一定在最小生成树上. 感觉看到了之后都比较显然,自 ...
- 线程同步synchronized,wait,notifyAll 测试示例
https://www.cnblogs.com/LipeiNet/p/6475851.html 一 synchronized synchronized中文解释是同步,那么什么是同步呢,解释就是程序中 ...
- Git全面教程
Git全面教程 简介 Git分布式版本管理系统. Linus在1991年创建了开源的Linux,但是一直没有一个合适的版本管理工具,在2002年以前,世界各地的志愿者都是通过把源代码文件通过diff的 ...
- 【C#】is 和 as
看个例子: public class User { } public class Group { } class Program { static void Main(string[] args) { ...
- 排序算法汇总(java实现,附源代码)
整理系统的时候发现了原来写的各种算法的总结,看了一下,大吃一惊,那时候的我还如此用心,具体的算法,有的已经模糊甚至忘记了,看的时候就把内容整理出来,顺便在熟悉一下,以后需要的时候就可以直接过来摘抄了. ...
- C#委托同步异步说明,并比较control调用Invoke和BeginInvoke的异同
一.委托的同步和异步: 1.同步 使用Invoke调用同步,或直接写fun1("func"),在fun1.Invoke这一步会明显的阻塞线程 使用: static void Mai ...
- openfiler的介绍与使用
一. Openfiler简介 Openfiler 能把标准x86/64架构的系统变成一个强大的NAS.SAN存储和IP存储网关,为管理员提供一个强大的管理平台,并能能应付未来的存储需求.依赖如VMwa ...
- java 列表与集合总结
列表与集合 (一切输出都用for each!丢弃迭代器) 列表List 1 顺序表 Arraylist 适用于静态查找2 链式双向表 Linkedlist 适用于增删该查3 (容器) Vecto ...
- 洛谷P1251 餐巾计划问题(费用流)
传送门 不得不说这题真是思路清奇,真是网络流的一道好题,完全没想到网络流的建图还可以这么建 我们把每一个点拆成两个点,分别表示白天和晚上,白天可以得到干净的餐巾(购买的,慢洗的,快洗的),晚上可以得到 ...