网络安全从入门到精通(第二章-3)后端基础SQL— MySQL高级查询与子查询
本文内容:
- MySQL的基础查询语句
- 链接查询
- 联合查询
- 子查询
- 渗透测试常用函数
1,MySQL基础查询语句:
select * from 表 order by ASC/DESC;
ASC:从小到大(默认)。
DESC:从大到小。
补充:在不知道字段名称的情况下,order by可以使用数字代替,用数字几就是按第几个字段排序。
select * from 表 limit n,m;
n:表示从第几行开始取。
m:表示取几条。
注意多种查询可以合并,先后顺序为:条件>排序=>分组>分页。
select * from 表 where 字段 like '%a%';
%通配符
补充:渗透测试时,有时候不能写=,就可以用like查询代替。
2,链接查询:
内链接:
select 表1.*, 表2.* from 表1 INNER JOIN 表2 on 表1.字段=表2.字段;
表1.字段=表2.字段为链接查询的条件。
外连接:
左链接:显示左表所有数据,右表没有数据的显示NULL。
select 表1.*, 表2.* from 表1 LEFT JOIN 表2 on 表1.字段=表2.字段;
右链接:显示右表所有数据,左表没有数据的显示NULL。
select 表1.*, 表2.* from 表1 RIGHT JOIN 表2 on 表1.字段=表2.字段;
补充:数据库可以进行一些运算。
运算符:+、-、/、*、%。
逻辑运算符: NOT(!) AND(&&) OR(!!)
slee():延迟函数。
select slee(n)延迟n秒。
AND和OR逻辑:
AND:都为真,为真,其余全为假。
OR:都为假,为假,其余全为真。
AND执行有选择:
当第一个条件为真时,不执行其余条件
当第一个条件为假时,不执行其余条件
举例:
假如表中符合数据有两条。
select * from 表 where 字段=数据 and sleep(2)
这时语句执行就会延迟4秒
因为第一个条件为真,就不会执行第二个条件,所以延迟4秒。
select * from 表 where 字段= 数据 or sleep(2)
这是语句执行就会延迟8秒
虽然第一个条件为真,但是or执行没有选择,第二个条件还是会执行。所以会延迟8秒
3,联合查询:
表的内容无重复:
select * from 表1 UNION select * from 表2;
表的内容有重复:
select* from 表1 UNION ALL select * from 表2;
注意事项:两次查询的字段数必须一致。
4,子查询:
官方定义:子查询是一种常用计算机语言select-sql语言种嵌套查询下层给的程序模块,当一个查询是另一个查询的条件是,称为子查询。
通俗解释:子查询就是有限执行,然后执行得到的结果作为某个查询的条件。
举例:
admin表当id=1的用户是否在user表也存在。
select * from user where username = (select username from admin where id=1);
检查admin表和user用户名是否相等。
select * from user where yonghu in (select yonghu from admin);
补充:子查询中的关键字:
ANY:对于子查询返回的列中任何一个数值,如果比较结果true就返回true。
IN:效果等同于ANY。
ALL:效果与ANY相反,比较结果必须全部为FALSE。
SOME:some是any的别名,用的比较少。
EXISTS:子查询是否有结果,若返回0行则表示FALSE,否则为TRUE。
5,渗透测试常用函数:
GROUP_CONCAT(字段): 可以将列显示的数据,转换为行显示,中间间隔符为逗号。
ASCII(char): 返回字符的ASCII码值。
SELECT DATABASE(): 返回当前数据库名。
SELECT USE()或SYSTEM_USEER(): 返回当前登录用户名。
SELECT VERSION(): 返回Mysql服务器的版本。
SELECT SLEEP(n): 休眠n秒。
与君共勉:
努力不是为了做给谁看,
无论什么结果都能问心无愧,
努力是因为你可以不接受命运的框定,
靠自己来场漂亮的反击。
网络安全从入门到精通(第二章-3)后端基础SQL— MySQL高级查询与子查询的更多相关文章
- 网络安全从入门到精通 (第二章-2) 后端基础SQL—MySQL数据库简介及SQL语法
本文内容: 什么是数据库 常见数据库 数据库的基本知识 基本SQL语法 1,什么是数据库? 数据库就是将大量数据保存起来,通过计算机加工,可以高效访问的数据聚合. 数据库就是长期存储在计算机内,有组织 ...
- 网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证
本文内容: 什么是表单? 如何创建一个表单: 接收并验证: PHP和数据库交互 1,什么事表单? 表单在网页中主要负责数据采集. 表单由三部分组成: 表单标签:这里面包含了处理表单数据所用动态脚本的U ...
- 网络安全从入门到精通 ( 第二章-5) 后端基础PHP—简介及基本函数-下
本文内容: 循环语句 PHP获取表单信息 PHP操作Mysql语句 语法SQL注入 1,循环语句: for循环: 语法:for($x=0,$x<10;$x++){执行语句;} 注意:$x++,先 ...
- 网络安全从入门到精通 (第二章-4) 后端基础PHP—简介及基本函数-上
本文内容 什么是PHP PHP的基础语法 运算符 条件分支语句 1,什么是PHP? PHP(超文本预处理器)是一种通用开源语言,(是动态语言中的一种,动态语言还有ASP,ASPX,JSP). PHP语 ...
- 网络安全从入门到精通 (第二章-1) Web安全前端基础
本文内容: 前端是什么? 前端代码 HTML CSS JS !!!醋成酒的小墨,促成就的小墨,小墨促成就,!!! 1,前端是什么? 网站一般用两部分组成,前端负责展示,后端负责处理请求. 2,前端代码 ...
- SaltStack 入门到精通第二篇:Salt-master配置文件详解
SaltStack 入门到精通第二篇:Salt-master配置文件详解 转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...
- ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区
原文:ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区 1 Desktop简介 1.1 ArcGIS for Desktop ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
- 第二章 TCP/IP 基础知识
第二章 TCP/IP 基础知识 TCP/IP transmission control protocol and ip internet protocol 是互联网众多通信协议中最为著名的. ...
随机推荐
- Java程序、JSP以及JavaScript中如何判断某个字符串是否包含某个子串
1.JSP str:原始字符串, subStr:要查找的子字符串 <c:if test="${fn:contains(str,subStr)==true}"> < ...
- LG_2051_[AHOI2009]中国象棋
题目描述 这次小可可想解决的难题和中国象棋有关,在一个N行M列的棋盘上,让你放若干个炮(可以是0个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法.大家肯定很清楚,在中国象棋中炮的行走方式是 ...
- 华为VS小米 营销手段有待继续强化
营销手段有待继续强化" title="华为VS小米 营销手段有待继续强化"> 对于大多数来说,希望看到强者愈强的戏码.比如:NBA里的N场连胜.苹果帝国千秋万载一统 ...
- Android Studio那些错误的问题们
本片博客会记录关于Android开发工具Android Studio出错的那些问题,包括导入项目编译失败.时间过长,莫名其妙的歇菜等等... 问题 3facets cannot be loaded.Y ...
- 你还记得2017年火爆的VR街机店,这一年他们过得还好吗?
对于当下太过急于成功.一夜暴富的人们来说,似乎总是会急不可耐地去抓住每一个有可能成为大势的风口.在这份普遍存在的浮躁心理下,蕴含着极大的不确定性--既让大众认识到太多的创新产品和服务,也让很多参与者痛 ...
- 将项目导入myeclipse后 tortoise svn 右键项目不能更新和提交
使用 tortoise svn客户端将svn服务器上的项目checkout之后正常,可以更新也可以提交:当将这个项目导入MyEclipse之后,不能更新和提交了只出现svn升级工作副本这一字样:网上搜 ...
- 有关PHP的可变函数
事情的起因是这样子的,最近看到一道题,问的是 <?php $_POST['a']($_POST['b']);?> 这句代码有什么问题,答案很明显因为PHP的可变函数这个特性,导致了任意代码 ...
- 简单的java开源图床
出于自用的目的,又找不到Java写的开源的程序,然后使用开源上传组件bootstrap-fileinput用 Spring Boot 写了一个图床 目前支持:七牛云,阿里云 GitHub: https ...
- IT知识圈视频学习资源整理贴
原文地址 热门课程 1.2019 尚学堂大数据全套视频教程(视频.源码.课件) 2.IDEA破解补丁(支持最新2019.2) 3.2019年 MySQL DBA 6期视频教程 4.微信小程序实战开发特 ...
- ueditor富文本编辑器——上传图片按钮卡顿,响应慢
最近负责将公司官网从静态网站改版成动态网站,方便公司推广营销人员修改增加文案,避免官网文案维护过于依赖技术人员.在做后台管理系统时用到了富文本编辑器Ueditor,因为公司有一个阿里云文件资源服务器, ...