数据库(mysql)相关知识
单表查询
排序
升序
select*from表名 order by字段 asc;
降序
select*from表名 order by字段 desc;
条件查询(包括通配符)
where语句
select*from表名where字段=内容;select*from表名where字段>=内容and字段<=内容;select*from表名where字段 between 内容1and内容2;
in 语句
select*from表名where字段=内容1or字段=内容2;select*from表名where age in(内容1,内容2);
判定字段是否为空
select*from表名where字段isnull;//判定字段为空select*from表名where字段isnotnull;//判定字段不为空
not语句
select*from表名where字段noin(内容1,内容2);//除了内容1和内容2外的其他内容
and or 优先级(and>or)
select*from表名where条件1and条件2or条件3;select*from表名where条件1and(条件2or条件3);
like 模糊查询
select*from表名where字段 like '%内容%';select*from表名where字段 like '内容%';select*from表名where字段 like '%内容';select*from表名where字段 like '_内容%';//_:下划线是匹配一个任意字符select*from表名where字段 like '%内容_';//最后第二个字符是内容
分组查询(常用mysql函数)
group by:将查询结果按照1个或多个字段进行分组,字段值相同的为一组
select*fromwhere表名groupby内容1,内容2,内容3......;
group_concat(字段名)可以作为一个输出字段来使用
select字段1,group_concat(字段2)from表名groupby字段3或字段1或字段2;
group by + 集合函数(avg,count用法一样)
select字段1,avg(字段2)from表名groupby字段3;select字段1,count(字段2)from表名groupby字段3;
子查询(操作符:=、>、<、>=、<=、<>、any、in、some、all、exists)
select*from表名1where字段操作符(select字段1from表名2where条件);
分页
limit函数
select*from表名 limit 0,n;//取前n条数据select*from表名 limit n;//取前n条数据select*from表名 limit n,m;//取第(n+1)到(n+m)条数据
复制一张表到另一张表中去
两张表的字段相同(主键不要有相同内容)
insert *from表名1(表名2);
两张表的字段不相同(主键不要有相同内容)
insert into表名1(字段1,字段2,字段3......)(select字段1,字段2,字段3......from表名2);
多表查询(连接查询)
交叉连接 cross join(结果集将包括两个表中的所有行)
select*from表名1 cross join 表名2;
内连接 inner join(只返回两个表中联结字段相等的行)
select* form 表名1 inner join 表名2 on 表名1.字段=表名2.字段;
左连接(返回包括左表中的所有记录和右表中联结字段相等的记录 )
select*from表名1 left join 表名2 on 表名1.字段=表名2.字段;
右连接(返回包括右表中的所有记录和左表中联结字段相等的记录)
select*from表名1 right join 表名2 on 表名1.字段=表名2.字段;
外连接 outer join(外连接就是求两个集合的并集,另外MySQL不支持OUTER JOIN,可以用左连接和右连接的结果做UNION操作来实现)
select*from表名1 left join 表名2 on 表名1.字段=表名2.字段unionselect*from表名1 right join 表名2 on 表名1.字段=表名2.字段;
索引
mysql索引有哪些
主键索引,唯一索引,聚集索引
常见(常用)的有哪些
主键索引,唯一索引
区别
主键索引
唯一索引是不允许其中任何两行具有相同索引值的索引。当现有数据中存在重复的键值时,大多数数据库不允许将新创建的唯一索引与表一起保存。数据库还可能防止添加将在表中创建重复键值的新数据。
唯一索引
数据库表经常有一列或多列组合,其值唯一标识表中的每一行。该列称为表的主键。(多列也可以作为主键),主键索引是唯一索引的特定类型。因为唯一索引要求索引列的值不能相同,而主键也都不相同,主键用来区分不同记录,当然不能重复。故主键索引是唯一索引的特殊形式。主键索引是数据库自动建立的,只要指定了主键,数据库就会自动创建主键索引。
聚集索引
聚集索引中表中行的物理顺序与键值的逻辑(索引)顺序相同。一个表只能包含一个聚集索引。如果某索引不是聚集索引,则表中行的物理顺序与键值的逻辑顺序不匹配。与非聚集索引相比,聚集索引通常提供更快的数据访问速度。
基本语句
alter from表名 add index 索引名;//添加索引show index from表名;//查询索引drop index 索引名 on 表名;//删除索引
@pfhu 2018-05-07 18:08 字数 2222 阅读 18数据库(mysql)相关知识的更多相关文章
- 数据库 MySQL基础知识
(关于MySQL的安装,具体见下面博客:http://www.cnblogs.com/wj-1314/p/7573242.html) 一.什么是数据库 ? 数据库是按照数据结构来组织,存储和管理数据的 ...
- MySQL相关知识
字符串拼接 select * from tablename where mydata like CONCAT(CURDATE(), '%') limit 3 这里concat是字符串拼接, conca ...
- MySQL相关知识总结
1. 显示所有表 show tables; 还有information_schema数据库里面有tables表,记录了所有表信息 use information_schema; select * fr ...
- 数据库 —— mySQL相关
目录 使用笔记 问题解决 资源链接 1.使用笔记 1.命令行客户端显示无法调整表格显示宽度,可以考虑在查询语句尾后添加 \G; 2.插入语句字符串转时间:link 2.问题解决 1.不能显示插入中文字 ...
- Spring的事务管理和数据库事务相关知识
1 初步理解 理解事务之前,先讲一个你日常生活中最常干的事:取钱. 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱:然后ATM出1000元钱. ...
- Mysql相关知识总结-持续更新~~~
2019-12-11对varchar类型排序问题的解决 在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varcha ...
- MySQL 相关知识细节及解析
1,删除表中所有记录使用delete from 表名:还是用truncate table 表名 删除方式:delete 一条一条删除,不清空auto_increment记录数 truncate 直接将 ...
- 基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用
在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各 ...
- 数据库相关知识积累(sqlserver、oracle、mysql)
数据库相关知识积累(sqlserver.oracle.mysql) 1. sqlserver :断开所有连接: (还原数据库) 1.数据库 分离 2. USE master GO ALTER DAT ...
- 数据库与sql注入的相关知识
数据库与sql注入的相关知识 sql语句明显是针对数据库的一种操作,既然想通过sql注入的方法来拿取数据那么就要先了解一下如何的去操作数据库,这方面并不需要对数据库有多么的精通但是如果了解掌握了其中的 ...
随机推荐
- day48 前端高级选择器优先级
复习 1. 基础选择器 标签选择器(div) | 类选择器(.div1) | id选择器(#div2) <div class="div1" id="div2&quo ...
- pycharm 配置svn
1.找到本地svn.exe 2.配置svn路径 3.输入svn路径,然后会进行密码校验 问题 本地的TortoiseSVN在bin目录没有发现svn.exe 原因: 安装TortoiseSVN的时候 ...
- C#字符串和数组互转
string str = "a,b,c,d,e"; string[] strArray = str.Split(','); //字符串转数组 ...
- 2019南昌网络赛-I(单调栈+线段树)
题目链接:https://nanti.jisuanke.com/t/38228 题意:定义一段区间的值为该区间的和×该区间的最小值,求给定数组的最大的区间值. 思路:比赛时还不会线段树,和队友在这题上 ...
- requests+django+bs4实现一个web微信的功能
前言: 今天我们利用requests模块+django+bs4浏览器来实现一个web微信的基本功能,主要实现的功能如下 a.实现返回二维码 b.实现手机扫码后二维码变成变成头像 c.实现手机点击登陆成 ...
- python基础 ------ 集合
---恢复内容开始--- ----- 集合 使用场景:网购的订单.与商品ID 一一对应的商品信息 python的内置类型:List Tuple Dictionary ---- 列表 LI ...
- 安装pygame出现is not a supported wheel on this platform解决办法
安装python库pygame时出现如下错误: 查看python的版本是否与之匹配,发现版本不匹配问题 例如1.我的python3.6是32位的,就只能安装cp36的:结果发现安装还是出现问题: 2. ...
- 7C - 折线分割平面
我们看到过很多直线分割平面的题目,今天的这个题目稍微有些变化,我们要求的是n条折线分割平面的最大数目.比如,一条折线可以将平面分成两部分,两条折线最多可以将平面分成7部分,具体如下所示. Input ...
- 探索未知种族之osg类生物---渲染遍历之裁剪二
前言 上一节我们大致上过了一遍sceneView::cull()函数,通过研究,我们发现上图中的这一部分的代码才是整个cull过程的核心部分.所以今天我们来仔细的研究一下这一部分. sceneView ...
- ASP .NetCore 部署500错误 查看异常详情
部署.net core 网站后,访问报错:500 按照教程设置完成,但访问时总是提示 服务器内部错误,没有详细的异常信息,无从下手. 解决办法: 1.在站点根目录下按住shift+鼠标右键,选择在此处 ...