## MySQL常用语句,增删查改,安装配置mysql服务

***#新手博客,应届生,谢谢支持哟

记得点赞关注哟***

***-----sql常见命令:--------***

安装服务:mysqld --install

初始化:mysqld --initialize --consol

启动服务:net start mysql

关闭服务:net stop mysql

登录服务器:mysql -h 地址 -P 端口 -u 用户名 -p 密码 或者 mysql -u root -p

查看进程:show processlist

查看系统变量:show variables

查看当前使用的数据库:select database()

查看系统时间,用户,版本:select now(),user(),version()

查看表:show create table; decs table

**

**DDL 数据库定义语言:用来创建数据库,表,列等等

DML 数据库操作语言:用来操作数据库中的记录

DQL 数据库查询语言:用来查询数据库

DCL 数据库控制语言:用来定义数据库访问权限和安全级别****

**DDL语言:**

创建数据库:`create database 数据库名 character set utf8`

使用某个数据库:use 数据库名

列出所有数据库:drop database 数据库名

列出所有表:show tables

查看你表结构:desc 表名

删除表:drop table 表名

创建表:`create table 表名(id BIGINT PRIMARY KEY auto_increment,name varchar(20),age int)`

改表名:rename table 原始表名 to 新表名

改表的字符集:arter table 表名 chararcter set 要改成的字符集

改表的字段:arter table 表名 change 原字段 新字段 数据类型

添加表字段:arter table 表名 add 字段名 数据类型

修改字段的数据类型:arter table 表名 modify 字段名 数据类型

删除某个字段:arter table 表名 drop 字段名

**DML语言:**

插入值:insert into 表名(字段1,字段2)values(值1,值2)

更新值:update 表名 set 字段1=新值,字段2=新值 where 条件

删除一行:delete from table 表名 where 字段=值

清空表内容:truncate table 表名

**DQL语言:**

1.条件查询where

条件:= != > < >= <=

2.bewteen; 例如:`字段名 bewteen 值1 and 值2`

3.in; 例如:`字段名 in (条件1,条件2,条件3)`

4.is null 为空;is not null 不为空;性能比较差,一般用isnull(参数1,参数2)函数代替,

为空,则返回参数1,不为空,则返回参数2

5.and 与; or 或; not 非

6.算术运算符:+(加) -(减) *(乘) /(除) %(模除)

可接通配符:% 代表0-n个字母; _ 代表任意一个字母

```sql

例如:SELECT * FROM user where age LIKE 's%' ; SELECT * FROM user where age LIKE '_s'

```

**字段控制查询:**

1.去重:`SELECT DISTINCT 列名 FROM 表名`

2.把查询的字段结果进行运算,值必须是数值型

```sql

例如: SELECT *,字段1+字段2 FROM 表名

```

3.当查询结果为null时,可以用IFNULL处理:

例如:SELECT *,字段1+IFNULL(字段2,0) FROM 表名

4.对查询结果起别名:关键字:AS

例: SELECT *,字段1+字段2 AS 别名 FROM 表名

注释:(1)as可以省略(2)不能加引号

**排序:**

1.关键字:ORDER BY;

(1) 升序:ASC

(2)降序:DESC

```ruby

例:select * from 表名 order by 列名1 asc,列名2 desc;

```

**聚合函数:**

1)COUNT():统计记录行数;

```sql

select count(*/列名),count() from 表名;

```

count(列名)不统计空行, count()和count(*)统计包括空行

2)MAX():计算最大值,如果是字符串,则使用字符串排序运算;

3)MIN():计算最小值,如果是字符串,则使用字符串排序运算;

4)SUM():计算和,如果不是数值类型,则为0;//select sum(列名) from 表名;

5)AVG():计算平均数,如果不是数值类型,则为0;

//结果是一个可能不存在的数据,因此无法和表中的数据进行比对;

//聚合函数是对记录的一个压缩的过程,得到的是一个数值;

**分组查询:**

1)关键字:GROUP BY;

```sql

例:select 列名1 from 表名 group by 列名1;

```

2)显示组内集合:group_concat();

```sql

`例:select 列名1,group_concat(列名2) from 表名 group by 列名1;`

```

3)group by+聚合函数;

4)分组后条件查询:group by +having;

```sql

例:select 列名1,group_concat(列名2),sum(列名2) from test GROUP BY 列名1 having sum(列名2)>12;

```

书写顺序:select from where group by having order by limit

执行顺序:from where group by having select order by limit

**分页查询LIMIT:**

1)LIMIT参数1,参数2;

参数1:从哪一行开始;

参数2:一共查几行;

2)角标从0开始;

3)分页思路:

int curPage=1;//当前页

int pageSize=3;//每页数据;

--当前页为1第一页从0开始(1-1)*3=0;

--当前页为2第一页从3开始(2-1)*3=3;

--当前页为3第一页从6开始(3-1)*3=6;

```sql

select * from 表名 limit (curPage-1)*pageSize,pageSize;

```

**多表查询:**

1.合并结果集:

(1)方式:1)UNION去除重复记录;2)UNION ALL不去除;

```sql

(2)格式:1)select * from 表1 UNION select * from 表2;2)select * from 表1 UNION ALL select * from 表2;

```

2.笛卡尔积:select * from 表1,表2;

```sql

两表查询:select * from 表1,表2 where 表1.id=表2.id;

```

```sql

三表查询:select * from 表1,表2,表3 where 表1.id=表2.id and 表2.id=表3.id;

```

**连接查询:**

```sql

1.内连接(查左右相等):select * from 表1 as 别名 INNER JOIN 表2 as 别名 ON 表1.id=表2.id;112

```

```sql

三表查询:select * from 表1 join 表2 on 表1.id=表2.id join 表3 on 表2.id=表3.id;

```

//jion 和 inner join 是一样的

2.外连接:

(1)左外连接(查左右相等,加左表数据):left outer jion;左连接:left jion

(2)右外连接(查左右相等,加右表数据):right outer jion;//很少用;有连接 right outer jion;//很少用;

3.非等值连接:在等值连接的基础上,用运算符;

4.自然连接:natural join;

注释:

(1)使用自然连接必须有列名一致,否则产生笛卡尔集;

(2)两行列名一样,则两列数据都相等才会被查出;

5.自连接:如果需要查同一个表两次,可以给表起别名两次来查询

```sql

例如:SELECT a.Num,a.Stop,b.Stop FROM Route a,Route b WHERE a.NUM=b.NUM;

```

**子查询:**把一个select语句的结果,当作另一个select的条件值或者表(where或者from后面)

1.在WHERE子句中进行使用查询

```sql

SELECT *

FROM EMP

WHERE SAL < (SELECT AVG(SAL) FROM EMP);

```

2.HAVING子句是对分组统计函数进行过滤的子句,也可以在HAVING子句中使用子查询

```sql

SELECT JOB,AVG(SAL)

FROM EMP

GROUP BY JOB

HAVING AVG(SAL) = (SELECT MAX(AVG(SAL)) FROM EMP GROUP BY JOB);

```

3.FROM子查询就是将一个查询结构(一般多行多列)作为主查询的数据源

```sql

SELECT JOB,AVG(SAL)

FROM (SELECT JOB,AVG(SAL) AS AVGSAL FROM EMP GROUP BY JOB)TEMP

WHERE TEMP.AVGSAL>2000;

```

4.SELECT子查询在SELECT子句中使用查询的结果(一般会和dual空表一起使用)

```sql

SELECT (SELECT COUNT(*) FROM EMP WHERE JOB = 'SALESMAN')/(SELECT COUNT(*) FROM EMP)

FROM DUAL;

```

5.将主查询的数据带到子查询中验证,如果成功则返回true,否则发水false。主查询接收true是就会显示这条数据,flase就不会显示。

```sql

`SELECT` *

FROM EMP E

WHERE EXISIT (

SELECT *

FROM DEPT D

WHERE E.DEPTNO = D.DEPTNO);

```

mysql 查询和修改组合_## 超详细MySQL常用语句,增删查改相关推荐

  1. mysql 查询和修改组合_别崩溃,来看这个MySQL全面瓦解:子查询和组合查询

    概述 子查询是SQL查询中的重要一块,是我们基于多表之间进行数据聚合和判断的一种手段,使得我们的处理复杂数据更加的便捷,这一节我们主要来了解一下子查询. 先做一下数据准备,这边建立三张表:班级.学生. ...

  2. MySQL表sql语句增删查改_学会这些操作你就不会栓Q(狗头)

    目录 本章目标 CRUD 新增(Create) 单行数据,全列插入 多行插入,指定列插入 查询(Retrieve) 修改(Update) 删除(Delete) 本章目标 学会MySQL表中的sql语句 ...

  3. mysql安装check requirements出错_超详细的MySQL8.0.17版本安装教程

    下载MySQL MySQL的官网地址:https://www.mysql.com/. 如下图所示: 然后点击DOWNLOADS ==> Community,选择MySQL Community S ...

  4. mysql查询结果输出文件_如何将MySQL查询输出保存到文件?

    mysql查询结果输出文件 We can use the MySQL outfile statement to save the query output into a file. This is v ...

  5. mysql多字段数据统计_超详细的mysql元数据sql统计--information_schema

    概述 information_schema 数据库跟 performance_schema 一样,都是 MySQL 自带的信息数据库.其中 performance_schema 用于性能分析,而 in ...

  6. mysql+sql语句赋值语句_超详细的SQL语句语法汇总

    一.数据控制语句 (DML) 部分 1.INSERT  (往数据表里插入记录的语句)INSERT INTO 表名(字段名1, 字段名2, --) VALUES ( 值1, 值2, --); INSER ...

  7. mysql .pdb是什么文件_超详细讲解如何使用 pdb 在服务器上调试代码

    Pycharm 的图形化界面虽然好用,但是在某些场景中,是无法使用的.而 Python 本身已经给我们提供了一个调试神器 -- pdb,可能你还不知道它,为了讲解这个神器,我写了这篇文章来帮助你轻松的 ...

  8. mysql查询男生基本情况_详解MySql基本查询、连接查询、子查询、正则表达查询...

    select * from STUDENT; 2.2.按条件查询 (1) 比较运算符 > , < ,= , != (< >),>= , <= select * fr ...

  9. mysql 查询不使用索引_简单的mySQL查询不使用索引

    我有一个非常奇怪的问题与MySQL和简单的查询与简单的索引.我试图使用这个查询: SELECT * FROM `counter_links` WHERE `link_id`=1544;正如你所看到的, ...

最新文章

  1. jenkins产生503错误的解决方法
  2. 什么是网络可见性?—Vecloud微云
  3. 通俗讲解自底向上构建知识图谱全过程
  4. idea 快捷键整理
  5. 5G领衔,十余名专家解析当下最火的“新基建”
  6. SQL Server 2012自动备份
  7. UI设计素材|等轴测图(2.5D插画)
  8. python 文件读写 newline_「Python」:文件读写
  9. ElasticSearch6.0 Java API 使用 排序,分组 ,创建索引,添加索引数据,打分等(一)...
  10. Oracle--sqlplus如何设置SQLPlus结果显示的宽度,ORACLE sqlplus提示符设置
  11. 问答 | 我适合做软件开发吗?
  12. 樊昌信 通信原理第七版 第九章思考题
  13. 超级机器人大战A(GBA)帅气攻略(超级系流程1)
  14. php开发微信会员系统,PHP实例:微信公众号实现会员卡领取功能
  15. 【Spring MVC 源码】MultipartResolver 的使用与解析
  16. 修改apk显示或隐藏桌面图标
  17. 微信授权之登录、注册、关联微信号全流程图
  18. js选中html的数字设置倒计时,JS实现的网页倒计时数字时钟效果
  19. 硬件学习_差模与共模
  20. 数据库指南-SQL与NoSQL

热门文章

  1. python入门指南阅读答案_【python】入门指南1
  2. linux制作chroot环境,Linux构造chroot环境
  3. [转]iOS SDK:iOS调试技巧
  4. 【dp】URAL-1018
  5. 2019年3月23日
  6. POJ3321 Apple tree
  7. C# 使用Quartz简单实例以及备忘
  8. Android 获取手机通讯录信息 — 头像、姓名和A-Z的快速查询
  9. Tapestry 和 JSF
  10. chrome扩展之4(终结篇):一步步跟我学开发一个表单填写扩展