MySQL的查询语句
一.基本查询语句
1.1从单个表中查询列
语法:select 查询的列1,查询的列2 from 表名 where 条件 group by 分组条件 order by 排序条件 having 查询满足的第二条件 limit 输出的行数
例子:
select tid from text1 group by(tday) order by tid asc ;
1.2从多个表中查询列
使用“.”将表中的列和表分割开来,语法如下:
select 表1.列....,表2.列..... from 表1,表2;
select text1.tid ,text2.tid from text1 ,text2 ;
二.单表查询
2.1使用符号 * 来查询所有的字段
2.2使用IN关键字:select 列名 from 表名 (not) in (值1,值2);表示只要符合值1或者值2即可。
2.3使用 between A and B : select 列名 from 表名 where 列名 (not) between A and B;
2.4模糊查询 使用like: %匹配符 _占位符 : select 列名 from 表名 where 列名 like "张%_";
2.5:is null 检查字段是否为空
2.6使用 and / or来达到多条件查询目的
2.7使用关键字distinct来去除重复操作 :select distinct 列名 from 表......
2.9使用order by来排序: select 列名 from 表名 order by asc升序/desc降序
2.10使用group by来分组,group_concat(列名):select group_concat(列名) from 表名 group by 列名;
2.11使用limit n 限制查询结果的数量为n
三.聚合函数
聚合函数就是将一组值计算后只计算出一个值。
3.1.计数函数:count()
3.2.求和函数:sum()
3.3.平均函数:avg()
3.4.最大、最小函数max()、min()
四.链接查询
4.1内链接查询
内链接要求两个表拥有相同的字段,这样才能进行查询。结果集也是只包括符合两个字段相同的结果。
例子如下:
表text3

表text1

可以看出两个表有共同的项:tid。
内链接查询语句:
select tnum1,tname from text1,text3 where text1.tid=text3.tid;
结果:

4.2外查询
外查询的结果集不仅包括符合链接条件的行数据,还包括了左表,右表中的数据。
语法:select 字段名 from 表名1 left | right jioin 表名2 on 表名1.列名1=表名.列名2;
左外链接:
left on 首先将两张表合并,不仅返回符合连接条件的数据还返回左表中的不符合条件的数据,并在右表相应的字段添加null
例子:
select tnum1,tname from text1 left join text3 on text1.tid=text3.tid;
右外连接只需要将left改为right即可。
五.子查询
子查询就是在一个查询语句里在嵌套一个查询。子查询从内部执行到外部,需要括号进行分开。
5.1使用带in的子查询,当子查询返回的是一个组合时,那么就必须使用in来表示。
select tid from text1 where tid in (select tid from text3);
5.2使用关键字exists来返回是否查询到了一个值,如果有则为true反之为false。如果返回的是true则将执行前面的查询部分。
select tid from text1 where exists(select tnum1 from text1 where tid=2);
5.3使用any和all的查询,any表示只要符合any()查询语句中的任何一个值就会执行外层语句,而all表示只有符合子查询所有的结果才能执行外部语句。
select tid from text1 where tnum1>any(select tnum1 from text2 where tid >3);
select tid from text1 where tnum1>all(select tnum1 from text2 where tid >3);
6.合并查询结果
使用union和union all来合并查询结果。
语法:select语句 union | all select语句
union合并后去除重复,二union all 是不去除重复
MySQL的查询语句的更多相关文章
- 23个MySQL常用查询语句
23个MySQL常用查询语句 一查询数值型数据: SELECT * FROM tb_name WHERE sum > 100; 查询谓词:>,=,<,<>,!=,!> ...
- MySQL 表查询语句练习题
MySQL 表查询语句练习题: 一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表 ...
- MYSQL——解题查询语句答题思路,再难的查询都不怕!
select查询语句,作为测试人员,使用此语句是家常便饭,是必须掌握的部分,由开始学习mysql到网上搜索试题做,开始做题一塌糊涂,拿到题目就晕,无从下手,现在慢慢总结了一套自己做题的方式,很开森,嘿 ...
- mysql—常用查询语句总结
关于MySQL常用的查询语句 一查询数值型数据: ; 查询谓词:>,=,<,<>,!=,!>,!<,=>,=< 二查询字符串 SELECT * FROM ...
- MySQL慢查询语句的定位
使用以下语句可以查询相关的配置和日志所在位置: show variables like '%slow%'; 名词解释: log_slow_admin_statements: 打开后可以将一些比较慢的管 ...
- Mysql的查询语句(联合查询、连接查询、子查询等)
Mysql的各个查询语句(联合查询.连接查询.子查询等) 一.联合查询 关键字:union 语法形式 select语句1 union[union选项] select 语句2 union[union选项 ...
- Mysql的查询语句的使用
1. 简单查询 查询所有字段: SELECT * FROM 表名 查询特定字段: SELECT 字段列表 FROM 表名 2. 查询显示行号 - 在字段列表中加入(@rownum := @rownum ...
- mysql命令查询语句&MTdata
1.单表查询 select * from student; 采用*效率低,不推荐,多用列名 一.单表查询的语法: SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY ...
- mysql中查询语句中的一个知识点说明
1, 简单说明. select * from tb_name where 1[不为零即可];则会显示所有记录,select * from tb_name where 0;则不显示任何记录 假设数据库中 ...
- MySQL简单查询语句练习
数据查询语法(DQL) DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ F ...
随机推荐
- 一、SQLite学习
由于公司业务拓展,需要开发一个基于ASP.NET Core2.0+AdminLTE架构的后台管理系统,数据库选择方面,选择了使用SQLite轻便. SQLite:一个软件库,实现自给自足,无服务器,零 ...
- 三、存储过程(Stored Procedure)与游标(Cursor)
一.存储过程 一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数,来执行它. 在大型数据库中,存储过程和触发器具有重要的作用.无论是存储过程还是触发器,都 ...
- 二十三、Spring框架的相关知识点总结
1.Spring的优点: 1.1.Spring在大小和透明性方面是轻量级的,Spring框架大约只有2MB大小. 1.2.控制反转(IOC):使用控制反转技术实现了低耦合,依赖注入(DI)到对象,而不 ...
- Units about ASM
1.ASM Striping and Mirroring:ASM supports two levels of striping: fine striping and coarse striping. ...
- Django之权限管理插件
一.功能分析: 一个成熟的web应用,对权限的控制.管理是不可少的:对于一个web应用来说是什么权限? 这要从web应用的使用说起,用户在浏览器输入一个url,访问server端,server端返回这 ...
- C#实体对象序列化成Json并让字段的首字母小写的两种解决方法
引言:最近在工作中遇到与某些API对接的post的数据需要将对象的字段首字母小写.解决办法有两种:第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性 ...
- 小程序util工具
import wafer from '../lib/wafer2-client-sdk' import tip from './tip' // 时间格式化 const formatTime = tim ...
- nc(netcat)扫描开放端口
探测单个端口是否开放可以用telnet,专业探测端口可以用Nmap,而对于非渗透用途的Linux可以直接用netcat. 1.使用netcat探测端口是否开放 nc -z -v - #z代表不交互要不 ...
- 逆袭之旅DAY20.XIA.程序调试
2018-07-16 20:25:50 F5:进入方法 F6:单步执行
- weblogic部署web项目(war包)
第一步,启动并访问weblogic,进入登录页面 第二步,进入主页面,开始部署项目 第三步,上载项目war包 选择需要上载的本地war包 第四步,开始项目配置 继续下一步 选择红色标记的配置 第五步, ...