Mysql的基本查询语句
聚集函数
mysql有5个聚集函数,分别是AVG,MAX,MIN,SUM,COUNT.
分组
分组的使用group by作为关键字,having作为条件关键字。
having和where的区别:1.where过滤的是指定的行,而不是分组,因为where没有分组的概念。从技术上来说,
where的所有技术和选项都适用于having。2.where是在数据分组钱进行过滤,having是在数据分组后进行过滤。
分组与排序
分组有时候需要排序,用到order by ,一般放在having后面使用。
子查询和自连接查询
有时候两个语句都能查询出来对应的需求,一般来说,自连接比子查询要快一些
自连接和外连接
有的数据库有全连接
自连接是排除了所有条件没有匹配到的值,左外连接是以左表为准,如果有值是null,也能匹配上。
组合查询 union 和unionall
组合查询中必须包含相同的列,表达式或聚集函数,列数据类型必须兼容。这样两个查询出来的结果才能组合
union去除重复的行,unionall相反。即使有不匹配的列名的表,也可以用别名组合
组合查询只能出现一条order by子句,一般放在最后面
全文本搜索
全文本搜索是引擎MYISAM支持的,INNODB并不支持。
使用全文本搜索:create table pro(noteid int,note_text text,FULLTEXT(note_text))这样就算创建了全文本搜索
select note_text from pro where Match(note_text) Against('rabbit');这就是使用了全文本搜索
表示在索索出包含rabbit文字的一行数据。搜索不区分大小写。搜索出的顺序是有等级的,等级高的提前输出。
布尔文本搜索:即使没有fulltext索引也可以使用文本搜索
select note_text from pro where Match(note_text) Against('rabbit' IN BOOLEAN MODE)
mysql定义了50%的规则,即一个词出现了50%以上的行中,就不再输出。比如有三行数据,全文本
搜索是不返回数据的
也有操作符可以使用(这个查文档,不再记录)
删除数据:truncate和delete
truncate:直接删除表然后再创建一个具有相同名称的空表
delete: 值一行一行的删除
所以清空表的时候需要使用truncate比较快。
主键可以这样设置:
primary key(列名)
引擎简介:
InnoDB:是一个可靠的事务处理引擎,它不支持全文本搜索。
MyISAM:是一个性能极高的引擎,它支持全文本,但是不支持事务
如果多张表用不同引擎创建,注意:外键不支持跨引擎
视图:
视图可以嵌套,视图不能有索引,视图可以和表一块使用
create view 视图名 来创建。show create view 视图名称 查看创建视图的语句。 drop view 视图名称删除视图
视图的更新:一般来说视图是可以更新的,但是如果存在 分组 , 连接, 子查询 , 并, 聚集函数 , distinct, 计算列,不能更新
所以一般是不能更新的。
如果使用嵌套的视图或者调用复杂的视图,性能可能下降的特别厉害。
存储过程:
游标:
触发器:
Mysql的基本查询语句的更多相关文章
- {MySQL的逻辑查询语句的执行顺序}一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析
MySQL的逻辑查询语句的执行顺序 阅读目录 一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析 一 SEL ...
- python 3 mysql sql逻辑查询语句执行顺序
python 3 mysql sql逻辑查询语句执行顺序 一 .SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_t ...
- 深入MySQL(四):MySQL的SQL查询语句性能优化概述
关于SQL查询语句的优化,有一些一般的优化步骤,本节就介绍一下通用的优化步骤. 一条查询语句是如何执行的 首先,我们如果要明白一条查询语句所运行的过程,这样我们才能针对过程去进行优化. 参考我之前画的 ...
- MySQL知识树-查询语句
在日常的web应用开发过程中,一般会涉及到数据库方面的操作,其中查询又是占绝大部分的.我们不仅要会写查询,最好能系统的学习下与查询相关的知识点,这篇随笔我们就来一起看看MySQL查询知识相关的树是什么 ...
- PHP中对mysql预编译查询语句的一个封装
原文地址:http://chen-shan.net/?p=474 为了防止sql注入,我们都使用过mysqli这个类,但是每次都需要绑定参数,绑定结果等,比较麻烦,所以可以把这些重复的语句封装成一个函 ...
- Datawhale MySQL 训练营 Task2 查询语句
目录 MySQL 管理 MySQL 用户管理 参考 数据库管理 SQ查询语句 1. 导入示例数据库,教程 MySQL导入示例数据库 2. 查询语句 SELECT 3. 筛选语句 WHERE ,过滤 4 ...
- 转载《mysql 一》:mysql的select查询语句内在逻辑执行顺序
原文:http://www.jellythink.com/archives/924 我的抱怨 我一个搞应用开发的,非要会数据库,这不是专门的数据库开发人员干的事么?话说,小公司也没有数 据库开发人员这 ...
- SQL注入之MySQL常用的查询语句
MySQL是一种使用很广的数据库,大部分网站都是用MySQL,所以熟悉对MySQL数据库的注入很重要. 首先来说下MySQL注入的相关知识点 在MySQL5.0版本之后,MySQL默认在数据库存放一个 ...
- Mysql操作之查询语句
查询语句: select 查询列表 from 表名 where 筛选条件; 去重:select distinct 查询列表...... 选择全部:* 起别名:select 查询列表 as 别名 fro ...
- Mysql 最全查询语句
基本查询语句及语法: select distinct from where group by having limit 一.单表查询 前期表与数据准备: # 创建一张部门表 create table ...
随机推荐
- OAuth2.0概念以及实现思路简介
一.什么是OAuth? OAuth是一个授权规范,可以使A应用在受限的情况下访问B应用中用户的资源(前提是经过了该用户的授权,而A应用并不需要也无法知道用户在B应用中的账号和密码),资源通常以REST ...
- FTP服务器虚拟用户配置
FTP服务配置问题及解决方案 使用被动模式,设置云主机IP为被动模式数据传输地址:在配置文件内添加 pasv_enable=YES pasv_promiscuous=YES pasv_address= ...
- rsync 服务介绍及相关实验
一.rsync 简介 rsync 是类 unix 系统下的数据镜像备份工具.一款支持快速完全备份和增量备份的工具,支持本 地复制,远程同步等,类似于 scp 命令:rsync 命令在同步文件之前要先登 ...
- cogs 186. [USACO Oct08] 牧场旅行 树链剖分 LCA
186. [USACO Oct08] 牧场旅行 ★★☆ 输入文件:pwalk.in 输出文件:pwalk.out 逐字节对比时间限制:1 s 内存限制:128 MB n个被自然地编号为 ...
- java.sql.SQLException: connection holder is null 问题处理
问题描述 上上个周测试的时候突然报系统异常,于是我立即查看日志,发现是一个数据库异常:java.sql.SQLException: connection holder is null我第一想到的就是可 ...
- 蒙蔽的FormBody
作为一个不算新人的新人,今天看到 了FormBody这个绿色字体,之前没有怎么注意过, 好了 ,发现了一篇文章,记录下. 这篇文章总结下来就是: 在前端穿过的数据是Json格式(当我们设置Conten ...
- macOS 10.11.* 安装scrapy
1.安装brew,然后修改brew源为某高校 2.更新python brew install python 3.安装pip 4.安装scrapy,这里肯定会有一个坑,之前在网上看到10.11开启了什么 ...
- 今天我的jupyter notebook打不开了,报错原因'No module named 'zmq.eventloop'
今天我的jupyter notebook打不开了,就是那种一打开出现黑色界面就退出的那种,惊恐爬上了我的面颊. 找了一个小时,试了好几种办法(包括别人说的什么把属性里面后面的%%的去掉)终究无果 打开 ...
- Trailhead Lightning 学习 一
计划学习一下莱特宁,从最基本的开始学习,脚踏实地.不忘初心,牢记使命,以下是查阅的资料. 简介 在此Salesforce教程中,将阐述Salesforce Lightning的基础知识,并了解Sale ...
- [bzoj4569] [loj#2014] [Scoi2016] 萌萌哒
Description 一个长度为 \(n\) 的大数,用 \(S1S2S3...Sn\) 表示,其中 \(Si\) 表示数的第 \(i\) 位, \(S1\) 是数的最高位,告诉你一些限制条件,每个 ...