MySQL查询数据详细
查询所有字段
Select * from 表名; //from就是从…开始
查询指定字段
Select 字段名 from 表名;
查询多个字段
Select 字段1,字段2,字段3… from 表名;
查询指定记录
Select 字段名 from 表名 where 查询条件; //where在哪里
操作符 说明
= 相等
<>,!= 不相等
< 小于
<= 小于等于
> 大于
>= 大于等于
BETWEEN 位于两端之间
带in关键字的查询
Select 字段名 from 表名 where 列名 in 条件 //in操作符来查询满足指定范围内的条件,条件之间用逗号分开,满足一个条件即可
带between and 的范围查询
Select 字段名 from 表名 where 字段名 between 条件 and 条件;between and用来查询某个范围内的值,需要两个参数,开始值和结束值,如果字段值满足则返回
带like的字符匹配查询
Select 字段名 from 表名 where 字段名 like ‘b%’ //like是查找相似值,%是匹配任意长度的字符,甚至包括零字符 _是指匹配任意一个字符
查询空值
Select 字符名 from 表名 where 字符名 is null;
Select 字符名 from 表名 where isnull(字符名);
Select 字符名 from 表名 where 字符名 < = > null;
带and的多条件查询
Select 字符名 from 表名 where 条件 and 条件 ; //and操作符只有满足所有查询条件的记录才会被返回,可以使用两个甚至多个
带or的多条件查询
Select 字符名 from 表名 where 条件 or 条件 //只需要满足一个条件即可,可以多个条件
查询结果不重复
Select distinct字符名 from 表名 ; //distinct不同的有区别的
对查询结果排序
select 字符名 from 表名 order by 字符名 ; //order by以…排序 desc 是从降序 默认是升序asc
分组查询
查询组里有几个
Select 列名1 count(*) from 表名 group by 列名1; //count计算 group by分组
查询最大量
Select 列名1 max(列名2) from 表名 group by 列名1; //max最大值
查询最小值
Select 列名1 min(列名2) from 表名 group by 列名1; //min最小值
总计
Select 列名1 sum(列名2) from 表名 group by 列名1; //sum总计
平均值
Select 列名1 avg(列名2) from 表名 group by 列名1; //avg 平均值
根据列名1对表中的数据进行分组,将列名2中数据显示出来
Select 列名1,group_concat(列名2) from 表名 group by 列名1;//group__concat显示出(列)中的数据
使用having过滤分组根据列1对表中的数据进行分组,并显示列2大于值的分组信息
select 列1,group_concat(列2) from 表名group by 列1 having count(列2)>值;//having是拥有 count计数
在group by 中使用with rollup 使用 with rollup 之后增加一条记录,该记录计算查询出的所有记录的总和,及统计记录数量
select 列名1,count(*) from 表名 group by 列名1 with rollup; //with rollup及统计记录数量
多字段分组
Select 列1 from 表名 group by 列1,列2; // Group by 关键字通常和集合函数一起使用,例如:MAX()、MIN()、COUNT()、SUM()、AVG()。
查询价格大于100的订单号和总订单价格
Select 列1,sum(价格*个数) from 表名 group by 列1 having sum (价格*个数) >100; //having比较 sum是总计
使用limit限制查询结果和数量
Select 列名 from 表名 limit 查看几行; //可以4,3 意思就是从第四行开始数三个
聚合函数查询
演示函数count的意思
Select count(列) from 表名 //count 返回列的行数(计数) 不计空值
可以计算组里的行数
Select 列1,count(列2) from 表名 group by 列1; //统计组里面列2的个数
演示sum函数的意思 注意:sum()函数在计算时,会忽略列值为NULL的行
select sum(列1) from 表名 where 条件 注:列= 值 // Sum是一个求和的函数,返回指定列值得总和
演示max函数的意思
Select max(列1) from 表名; //max返回指定列中的最大值
演示min函数的意思
select min(列1) from 表名; //min()返回列中的最小值
内连接查询(inner join)
Select 表名.列1,列2,列3 from 表名1,表名2 where 条件 注释:表名1和表名2的条件
Select 表名.列1,列2,列3 from 表名1inner表名2 on条件
//在内连接查询中,只有满足条件的记录才能出现在结果关系中
左连接查询(left join on)
Select 表1,列1,列2,列3 from 表1 left join表2 on 条件; //以表1为标准没有的话填充null
右链接查询(right join on )
Select 表1,列1,列2,列3 from 表1 left join表2 on 条件; //以表2为标准没有的话填充null
复合条件连接查询
Select 表1.列1,列2,列3 from 表1 inner join 表2 on 条件 and 条件;
带any,some关键字的子查询
Select 列1 from 表名 where 列1 > any (select 列2 from 表2);
Select 列1 from 表名 where 列1 > some(select 列2 from 表2);
//any和some是同音字,表示满足一个条件就行
带all关键字的子查询
Select 列1 from 表名 where 列1 > all(select 列2 from 表2);//all需要满足所有
带exists关键字的子查询
Select 列名 from 表名 where exists (select 列名 from 表名 where 条件);
//先执行exists里的语句,如果里面的语句没有答案就不执行外面的语句,如果有,则显示
带in关键字的子查询
Select 列1 from 表名 where 列2 in (select 列2 from 表名2 where 条件);
//in先执行内语句,之后用内语句的值提供给外语句进行比较操作
带比较运算符的子查询
select 列1,列2 from 表名 where 列1= (select 表2.列3 from 表2 where 条件);
合并查询结果 (union);
Select 列1,列2,列3 from 表名 where 条件 union all select 列1,列2,列3 from 表名2 条件; //union可以给多天select语句合并,不加上all作用是去重
为表取别名(表名 as 别名)
Select 列名 from 表名 as 别名 where 条件;
为字段取别名(列名 as 别名)
Select 列名 as 别名 , 列名2 as 别名 from 表名 where 条件;
正则表达式(regexp)
查询以特定字符或字符串开头的记录 ^值
Select 列名 from 表名 where 列名 regexp ‘^字符值’;
查询以特定字符或者字符串结尾的记录 值$
Select 列名 from 表名 where列名 regexp ‘值$’
用符号‘.’来代替字符串中的任意一个字符
Select 列名 from 表名 where 列名 regexp ‘值.值’
使用“*”和“+”来匹配多个字符
Select 列名 from 表名 where 列名 regexp ‘值*’ //*是0到无数个
Select 列名 from 表名 where 列名 regexp ‘值+’ //+是1到无数个
匹配指定字符串 |
Select 列名 from 表名 where 列名 regexp ‘值|值’;
匹配指定字符中的任意一个
Select 列名 from 表名 where 表名 regexp ‘[值1值2]’
匹配指定字符以外的字符
Select 列名 from 表名 where 列名 regexp ‘[^值]’
使用{n,}或者{n,m}来指定字符串连续出现的次数
Select 列名 from 表名 where 列名 regexp ‘值{连续出的次数,最高多少次}’;
MySQL查询数据详细相关推荐
- MySQL查询数据(超详细)
MySQL查询数据(超详细) 一.简单查询语句 select * from 表名 条件查询语句; 二.多表查询 多张表有同名字段出现在select语句中,同名字段必须带上 "表名 . 字段名 ...
- MySQL查询数据表中数据记录(包括多表查询)
MySQL查询数据表中数据记录(包括多表查询) 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: sele ...
- mysql 优化查询方法,优化MYSQL查询的详细方法
优化MYSQL查询的详细方法 发布时间:2020-06-08 17:19:28 来源:PHP中文网 阅读:135 作者:三月 不知道大家之前对类似优化MYSQL查询的详细方法的文章有无了解,今天我在这 ...
- mysql 查询数据 程序_MySQL 查询数据
MySQL 查询数据 MySQL 数据库使用SQL SELECT语句来查询数据. 你可以通过 mysql> 命令提示窗口中在数据库中查询数据,或者通过PHP脚本来查询数据. 语法 以下为在MyS ...
- MySQL 查询数据
MySQL 查询数据 MySQL 数据库使用SQL SELECT语句来查询数据. 你可以通过 mysql> 命令提示窗口中在数据库中查询数据,或者通过PHP脚本来查询数据. 语法 以下为在MyS ...
- mysql查询结果作为附件_python3+mysql查询数据并通过邮件群发excel附件
python3+mysql查询数据并通过邮件群发excel附件 来源:中文源码网 浏览: 次 日期:2018年9月2日 python3+mysql查询数据并通过邮件群发excel附件 本文 ...
- mysql查询数据的总记录数
mysql查询数据的总记录数 领导让获取数据库中的所有记录总数,网上查了一会,看到了很多都是不能执行,我这小性子安耐不住了,开始暴怒,最后的最后看下来应该缺少了一个关键字,还自以为是的想不知道是不是m ...
- MySQL查询数据后加上百分号%
MySQL查询数据后加上百分号% CONCAT(字段, '% ') mysql数字格式化千分号的问题,即每三位一个逗号 SELECT FORMAT('字段',2); mysql四舍五入的问题 roun ...
- MYSQL 查询数据排序数据和分组数据
在mysql查询过程中,可以对数据进行过滤,也可以对数据进行排序,可以对数据分组,下面分别讲述排序数据和分组数据例子.1,数据的排序 使用 ORDER BYselect * from where id ...
- 使用Connector / Python连接MySQL/查询数据
使用Connector / Python连接MySQL connect()构造函数创建到MySQL服务器的连接并返回一个 MySQLConnection对象 在python中有以下几种方法可以连接到M ...
最新文章
- windowsXP用户被禁用导致不能网站登录
- 自定义时间格式 返回年月日
- 随机验证码 php
- nginx proxy cache配置参数解读
- 历史重现,德国海关突袭IFA大展
- excel中最常用的30个函数_94个Excel常用函数目录
- java 静态绑定_java的动态绑定和静态绑定
- Linux(CentOS6.4、CentOS6.3)下安装、配置PostgreSQL9.2
- protubuffer for windows配置指南!
- ORB_SLAM3编译
- 这个方法可以实现自动抠图,快来get
- qq游戏坦大战服务器维护中,高手教你如何解决QQ游戏问题
- 科维的时间管理法—《可以量化的管…
- 电路抗干扰设计——非常详细
- Python调用xbox手柄马达震动
- NC23053月月查华华的手机
- ESP32学习笔记(45)——DAC接口使用
- 阿里云天池大赛赛题(深度学习)——视频增强(完整代码)
- 韩剧机器人题材的_有这九部题材不同风格各异的韩剧,你这个冬天可不会剧荒了...
- HIT校园网ps4联机教程