MySql最最最最基础的通俗易懂的知识,数据库简介及常见的数据库类型,简单分类,内、外、全连接,多表联查(三表联查)等最简单例子语句,请耐心看完学习喔~

目录

一、Mysql简介:

*简单来说呢就是存储数据库的一个仓库,可以存储图片,视频,文字... 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库

二、常见的数据库类型:

三、mysql安装和卸载

常见指令:

四、MySQL的使用

五、SQL语句分类

六、常用字段

七、常见类型

八、 简单的数据库语句

8.1创建数据库student:(创建一个表名为'student'的数据库)

8.2使用数据库:

8.3创建表:

8.4修改编码:

8.5新增数据;单条添加:

8.6新增数据;多条添加:

8.7修改数据:

8.8查询—全查:

8.9条件查询:

8.10模糊查询:

8.11排序—升序:

8.12排序—降序:

8.13分组查询:

九、多表联查

9.1内连接

9.2外连接

9.3全连接 full join = left join + union + right join

9.4三表联查

9.5子查询:一个表的查询的结果作为另一个表的条件

—————————————————————————————————————————
版权声明:本文为CSDN博主「HelloGuoYing」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/HelloGuoYing/article/details/114687017

一、Mysql简介:


MySQL是一种开放源代码的关系型数据库管理系统。
1.MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下产品。
2.MySQL使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
3.MySQL是开放源代码的,任何人都可以下载并根据个性化的需要对其进行修改。
4.MySQL因为其速度、可靠性和适应性而备受关注,MySQL是管理内容最好的选择。

*简单来说呢就是存储数据库的一个仓库,可以存储图片,视频,文字... 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库

二、常见的数据库类型:

    大型:oracle,db2
    中型:mysql,sqlserver...
    小型:sqlite

三、mysql安装和卸载

MySQL官网下载地址:https://www.mysql.com/downloads/

MySQL安装教程:https://www.cnblogs.com/winton-nfs/p/11524007.html

常见指令:
①安装服务:mysqld --install
②初始化: mysqld --initialize --console
③开启服务:net start mysql
④关闭服务:net stop mysql
⑤登录mysql:mysql -u root -p
   Enter PassWord:(密码)
⑥修改密码:alter user 'root'@'localhost' identified by 'root';(by 接着的是密码)
⑦标记删除mysql服务:sc delete mysql
 删除对应的文件夹
 删除注册表(mysql)

四、MySQL的使用

1:黑窗口cmd
2:使用工具 navicat(下载地址:http://www.navicat.com.cn/)等等...,
工具很多自行选择自己喜欢用的,顺手就行,怎么方便怎么来啦~

五、SQL语句分类

数据定义语言DDL         create(创建),drop(删除),alter(修改),truncate(清空表,截断表)
数据查询语言DQL         select(查询)
数据操纵语言DML         insert(插入),delete(删除),update(修改)
数据控制功能DCL         grant (授权), revoke(回收)

六、常用字段

主键:primary key  
自增:auto_increment
空:null
默认:default
唯一:unique
外键:foreign

七、常见类型

    int   
    float
    double
    char      固定长度     
    varchar   长度变              
    text
    date
    time
    datetime

八、 简单的数据库语句

8.1创建数据库student:(创建一个表名为'student'的数据库)

create DATABASE student

8.2使用数据库:

 use student

8.3创建表:

create table student(
id int PRIMARY key auto_increment,
sname VARCHAR(20),
sex VARCHAR(2),
age int,
score FLOAT(4,2)
)

8.4修改编码:

 alter database student CHARSET=utf8

8.5新增数据;单条添加:

INSERT into student(id,sname,sex,age,score) VALUES(1,"大哥1","男",24,99.5)

8.6新增数据;多条添加:

INSERT into student VALUES(2,"大哥2","男",25,90.5),(3,"大哥3","女",22,89),(4,"大哥4","女",22,99)

8.7修改数据:

修改数据格式例如:update 表名 set 字段=修改的数据  where 字段=值
              UPDATE student set sname='大哥大'   where   id=2 

8.8查询—全查:

select * from +表名
select * from student

8.9条件查询:

select * from student where id=1 or id =2                          (id为1或2)
select * from student where id in(1,2,3,4)                         (id为1,2,3,4)    
select * from student where id BETWEEN 1 AND 4                     (id在1和4之间‘包括1和4’)

8.10模糊查询:

SELECT * from student where sname like '大%'             like'大%'     :将搜索以‘大‘开头的所有字符串(如 大哥)
SELECT * from student where sname like '%哥'             like'%哥'     :将搜索以‘哥‘ 结尾的所有字符串(如 大哥)
SELECT * from student where sname like '%哥%'            like'%哥%'  :将搜索包含'哥' 的所有字符串(如 大哥大)

8.11排序—升序:

select * from student ORDER BY score                升序:order by

8.12排序—降序:

select * from student ORDER BY score  desc          降序:order by desc

8.13分组查询:

select count(*) from student GROUP BY sex HAVING sum(score)>=85  GROUP BY:以其中一个字段的值来分组

注意:

1、HAVING必须在GROUP BY后面,

2、使用了HAVING必须使用GROUP BY,但是使用GROUP BY不一定使用HAVING!

3、GROUP BY必须得配合聚合函数来用,分组之后

常用聚合函数:

count()  AS 计数
sum()    AS 求和
avg()    AS 平均数
max()    AS 最大值
min()    AS 最小值
4、如果有where限制条件语句

where在前,GROUP BY在后,注意GROUP BY紧跟在where最后一个限制条件后面,不能被夹在where限制条件之间。

where在前,GROUP BY在后的原因:要先用where过滤掉不进行分组的数据,然后在对剩下满足条件的数据进行分组。

完整例子如下:

https://www.cnblogs.com/mark5/p/11115750.html

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name; 

九、多表联查

    内连接   inner join..on
    外连接   left join..on ,right join..on
    全连接   full join (不适用mysql,适用oracle)   = left join + union + right join 

9.1内连接

*给表取名字时as可以写!也可以省略

select * from 表1 as 表1名称 inner join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段

举例如下:

select * from student as sss inner join class as ccc on sss.id = ccc.id

select * from student sss inner join class ccc on sss.id = ccc.id(as可以省略!!!!和上一行内容相同) 

9.2外连接

1、左连接:

select * from 表1 as 表1名称 left join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段

select * from student as sss left join class as ccc on sss.id = ccc.id (左边为主表,右边有则填充,没有用null)           

select * from student sss left join class ccc on sss.id = ccc.id(as可以省略!!!!和上一行内容相同) 

2、右连接:

select * from 表1 as 表1名称 right join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段

select * from student as sss right join class as ccc on sss.id = ccc.id(右边为主表,左边有则填充,没有用null)

select * from student sss right join class ccc on sss.id = ccc.id(as可以省略!!!!和上一行内容相同) 

9.3全连接 full join = left join + union + right join

1、select * from 表1 as 表1名称 full join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段

2、select * from 表1 as 表1名称 left join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段 UNION select * from 表1 as 表1名称 right join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段

select * from student as sss full join class as ccc on sss.id = ccc.id 

select * from student sss full join class ccc on sss.id = ccc.id(as可以省略!!!!和上一行内容相同) 

select * from student as sss left join class as ccc on sss.id = ccc.id UNION select * from student as sss right join class as ccc on sss.id = ccc.id

select * from student sss left join class ccc on sss.id = ccc.id UNION select * from student sss right join class ccc on sss.id = ccc.id(as可以省略!!!!和上一行内容相同) 

9.4三表联查

select * from 表1 as 表1名称 inner join 表2 as 表2名称 on 表1名称.字段 = 表2名称.字段 inner join 表3 as 表3名称 on 表1名称.字段 = 表3名称.字段

举例如下:

select * from student as sss inner join class as ccc on sss.id = ccc.id inner join school as sc on sss.id = sc.id

select * from student sss inner join class ccc on sss.id = ccc.id inner join school sc on sss.id = sc.id(as可以省略!!!!和上一行内容相同) 

9.5子查询:一个表的查询的结果作为另一个表的条件

举例如下:

SELECT city from school where school ='北京'
SELECT classroom from class where city=(SELECT city from school where school ='北京')

@希望能帮到大家!~有什么疑问可以评论或私信我,喜欢就多多支持我8

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,504评论 4 365
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,898评论 1 300
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 110,218评论 0 248
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,322评论 0 214
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,693评论 3 290
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,812评论 1 223
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,010评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,747评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,476评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,700评论 2 251
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,190评论 1 262
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,541评论 3 258
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,206评论 3 240
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,129评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,903评论 0 199
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,894评论 2 283
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,748评论 2 274

推荐阅读更多精彩内容