MySQL语句
select 列名 from 表名 : 查询语句。若列名为*,则是所有列
order by 列名:根据列名排序
order by 列名 desc:根据列名倒排序
limit 位置,数目:取从某位置往下的某数目的值。位置从0开始计数
max(列名):取该列名的最大值
min(列名):取该列名的最小值
表名 a inner join 表名 b on a.列名==b.列名 或 join:将两个表按照某一列相同合并(内连接)
表名 a left join 表名 b on a.列名==b.列名 或 left outer join:左连接,将存在该列相同的值合并,左边的表全部保存,右边的表不存在的置null
表名 a right join 表名 b on a.列名==b.列名 或 right outer join:右连接,将存在该列相同的值合并,右边的表全部保存,左边的表不存在的置null
full join 或 full outer join:全外连接,将等值的、左右未匹配的都加上
count(列名):取该列中该元素的个数,count(*)统计行数,count(distinct 列名)计算不同值有几列
group by 列名 having 条件:按列名分组,再通过条件筛选
||:拼接字符串
distinct:去重
on 条件:在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录
where 条件:是在生成临时表生成好后,再对临时表进行过滤的条件,没有left join的含义
create table if not exists 表名(列名 类型 是否为空 是否主键,……):创建表
insert into 表名 a select 列名 from 表名 b:会将b表该列名的值放入a表该列名的位置
insert into 表名 values(),():插入对应得值
delete from 表名 where 条件:删除满足条件的行,mysql不允许再子查询的同时删除表数据
update 表名 set 列名=值,列名=值 where 条件:更新满足条件的行
MySQL和redis的区别
数据库类型:mysql是关系型数据库,主要用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。redis是NoSQL(非关系型数据库),也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限。
mysql的运行机制:mysql作为持久化存储的关系型数据库,相对薄弱的地方在于每次请求访问数据库时,都存在着I/O操作,如过反复频繁的访问数据库。第一:会在反复链接数据库上花费大量时间,从而导致运行效率过慢;第二:反复的访问数据库也会导致数据库的负载过高,那么此时缓存的概念就衍生了出来。
缓存:缓存就是数据交换的缓冲区,当浏览器执行请求时,首先会在缓存中进行查找,如果存在,就会获取;否则就访问数据库。缓存的好处就是读取速度快。
redis数据库就是一款缓存数据库,用于存储使用频繁的数据,这样减少访问数据库的次数,提高运行效率。
区别:类型上:mysql是关系型数据库,redis是缓存数据库
作用上:mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢;redis用于存储使用较为频繁的数据存到缓存中,读取速度快。
需求上:mysql和redis因为需求的不同,一般都是配合使用。
图数据库
定义:图形数据库是一种非关系数据库,它应用图形理论存储实体之间的关系信息。最常见的例子就是社会网络中人与人之间的关系。关系型数据库用于存储"关系型"数据的效果并不好,其查询复杂、缓慢、超出预期,而图形数据库的独特设计恰恰弥补了这个缺陷。
组成:在一个图形数据库中,最主要的组成有两种,结点集和连接节点的关系(泡泡和箭头)。结点集就是图中一系列结点的集合,比较接近于关系数据库中所常使用的表,而关系则是图形数据库所特有的组成。
常见的图形数据库:Neo4j基于Java实现,兼容ACID特性,也支持其他编程语言,如Python。
HugeGraph百度开源的分布式图数据库。
其中内容都是针对问题收集在网上收集,如果侵权告知立即删除!