Mysql数据库简单常用语句

1、命令连接数据库

mysql -h 127.0.0.1 -u root -p

2、新增用户

GRANT SELECT on 数据库.* to 用户名@登录主机 identified by "密码";

3、创建数据库

CREATE DATABASE databaseName;

4、使用数据库

USE databaseName;

5、删除数据库

DROP DATABASE databaseName;

6、创建表

CREATE TABLE person(
id int(10) not null auto_increment UNIQUE,
name varchar(25),
age int(10));

7、查看表结构

DESC person;

8、插入数据

INSERT INTO person(name,age)  VALUES('张三',30);

9、批量插入数据

INSERT INTO person  VALUES(3,'李5',30),(4,'李6',30),(5,'李7',30);

10、删除数据

DELETE FROM person where id=4;

11、修改数据

UPDATE person SET age=50 WHERE name='李7';

12、查询数据

SELECT * FROM person WHERE id=5 AND name='李7';

13、升序排序

SELECT * FROM person ORDER BY age;

默认升序ASC可以省略。

14、降序排序

SELECT * FROM person ORDER BY age DESC; 

降序必须写上DESC。

15、数据分组

SELECT age,COUNT(age) FROM person where age>30 GROUP BY age;

查询出年龄大于30岁的人数有还有哪些年龄段,并统计出来各个年龄段的人数个数。

16、分组条件查询

SELECT age,COUNT(age) FROM person where age>30 GROUP BY age HAVING COUNT(age)>2;

查询出年龄大于30岁的人数有还有哪些年龄段,并统计出来各个年龄段的人数个数,最后筛选出来年龄段的人数大于2人的年龄段人数信息。
HAVING 是用来设置分组条件的条件表达式,用来分组查询后指定一些条件来输出查询结果。
WHERE 语句在聚合前先筛选记录,也就是说作用在GROUP BY和HAVING字句前,而HAVING子句在聚合后对组记录进行筛选,HAVING只能用于GROUP BY。
WHERE 用于过滤数据行,而 HAVING用于过滤分组。
WHERE 在数据分组前进行过滤,而 HAVING 在数据分组后进行过滤。
WHERE 查询条件中不可以使用聚合函数,而 HAVING 查询条件中可以使用聚合函数。
WHERE 查询条件中不可以使用字段别名,而 HAVING 查询条件中可以使用字段别名。

17、限制查询数量LIMIT

SELECT * FROM user LIMIT 5;

检索前5行记录,只给一个参数,它表示返回最大的记录行数目。

SELECT * FROM person LIMIT 2,2;

从第2条数据开始,检索出2条数据。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
初始记录行的偏移量是从0开始(不是 1)。

18、添加字段

ALTER TABLE person add phoneNumber varchar(25) not Null;

19、重命名字段

ALTER TABLE person change phoneNumber telephoneNumber varchar(25);

20、条件查询过滤

(1)AND(与查询)

用AND进行查询的时候,查询出来的数据要求条件都得满足。

SELECT * FROM person WHERE `name`='赵四' and age=50;

(2)OR(或查询)

用OR进行查询的时候,查询出来的数据只要求满足其中任意一个条件就可以查询出来。

SELECT * FROM person WHERE `name`='赵四' OR age=30;

查询出来名字是‘赵四’的,或者age在30岁的所有人信息。

(3)IN(在给定范围内)

用IN进行查询的时候,查询出来的数据在这个IN后边括号里边给定的值当中。

SELECT * FROM person WHERE age IN(30,55);

只查询出来年龄是30岁和55岁的人数信息。

(4)NOT IN(不在范围内)

用NOT IN进行查询的时候,查询出来的数据不在这个给定的范围内。

SELECT * FROM person WHERE age NOT IN(30,40,50);

查询出来所有年龄不是30岁,40岁,50岁的人。

(5)IS(为空)

用IS NULL进行查询的时候,是用来查询某字段为空时用is null,而不能使用"=null",因为mysql中的null不等于任何其他值,也不等于另外一个null。

优化器会把"=null"的查询过滤掉而不返回任何数据,查询某字段为非空时使用is not null。

SELECT * FROM person WHERE name is null;

21、模糊查询LIKE

(1)LIKE '李%'

使用LIKE查询该字段以“李”姓开头的数据。

SELECT * FROM person WHERE name like '李%';

(2)LIKE '%明'

使用LIKE查询该字段以“四”结尾的数据。

SELECT * FROM person WHERE name like '%四';

(3)LIKE '%明%'

使用LIKE查询该字段包含“强”的数据。

SELECT * FROM person WHERE name like '%强%';

22、字段控制查询过滤

​(1)DISTINCT

去除重复的数据。

SELECT distinct age FROM person;

(2)AS

可以设置列的别名、也可以省略AS来设置关键字。

SELECT name as 姓名,age 年龄 FROM person;

23、聚合函数

(1)AVG()函数

AVG函数是用来计算某一列的平均值,比如可以用在计算平均薪资、平均年龄等。

SELECT avg(age) FROM person;

(2)COUNT()函数

COUNT()聚合函数是用来统计表中记录的个数或者列中值的总个数,计算内容由SELECT语句指定,例如要获取person表中age > 30岁的人数。

SELECT count(*) FROM person WHERE age >30;

(3)MAX()/MIN()函数

MAX()聚合函数选取最大值,MIN()聚合函数选取最小值。

SELECT max(age) FROM person;
SELECT min(age) FROM person;

(4)SUM()函数

SUM()聚合函数用来计算满足条件的某一列的总和。

SELECT sum(age) FROM person ;

24、表连接查询

25、修改最大连接数

show variables like '%max_connections%';

show status like 'Threads%';

set global max_connections=1000;

最新文章

  1. J2EE版本
  2. android学习笔记15——Galley
  3. poj 2299 求逆序数
  4. matlab中 hold on 与hold off的用法
  5. 更好的使用chrome
  6. [置顶] ※数据结构※→☆非线性结构(tree)☆============树结点 链式存储结构(tree node list)(十四)
  7. js使用栈来实现10进制转8进制 js取除数 余数
  8. 观察者模式(Observer)发布、订阅模式
  9. Activiti工作流几种驳回方式的实现与比较
  10. init,initialize,initWithFrame,initWithCoder,awakeFromNib等区别
  11. iframe中的a标签电话链接不能正常打开
  12. RN 的页面布局
  13. 菜鸟教程之学习Shell script笔记(上)
  14. php配置文件php.ini的详细解析(续)
  15. 那些令人迷惑的名词:切图/H5/XML/REST
  16. spark 运行架构
  17. Spring中的destroy-method方法
  18. webpack进阶--打包
  19. Tomcat8.5 升级tomcat版本导致出现异常,Base64不存在
  20. Java远程调试 java -Xdebug各参数说明

热门文章

  1. java 进阶P-5.5+P-6.1
  2. .NET与大数据
  3. immutable.js学习笔记(二)----- List
  4. python装饰器拦截方法执行
  5. 爬虫Charles安装破解使用教程
  6. 2211-13 flask模板
  7. Windows Server 2016 安装AD和Exchange
  8. java2022.7.9
  9. java环境变量配置-最新版
  10. 在线工具帮助医生在社区转诊时甄别SpA患者