mysql基础
- 格式:ppt
- 大小:95.50 KB
- 文档页数:14


mysql基础查询语法⼀、mysql查询的五种⼦句where⼦句(条件查询):按照“条件表达式”指定的条件进⾏查询。
group by⼦句(分组):按照“属性名”指定的字段进⾏分组。
group by⼦句通常和count()、sum()等聚合函数⼀起使⽤。
having⼦句(筛选):有group by才能having⼦句,只有满⾜“条件表达式”中指定的条件的才能够输出。
order by⼦句(排序):按照“属性名”指定的字段进⾏排序。
排序⽅式由“asc”和“desc”两个参数指出,默认是按照“asc”来排序,即升序。
limit(限制结果集)。
1、where——基础查询where常⽤运算符:运算符说明⽐较运算符<⼩于<=⼩于或等于=等于!= 或<>不等于>=⼤于等于>⼤于in在某集合内between在某范围内逻辑运算符not 或!逻辑⾮or 或||逻辑或and逻辑与或&&2、group by 分组“Group By”从字⾯意义上理解就是根据“By”指定的规则对数据进⾏分组,所谓的分组就是将⼀个“数据集”划分成若⼲个“⼩区域”,然后针对若⼲个“⼩区域”进⾏数据处理。
select类别, sum(数量) as数量之和from Agroupby类别注:group by语句中select指定的字段必须是“分组依据字段”,其他字段若想出现在select中则必须包含在聚合函数中。
mysql中五种常⽤的聚合函数:(1)max(列名):求最⼤值。
(2)min(列名):求最⼩值。
(2)sum(列名):求和。
(4)avg(列名):求平均值。
(5)count(列名):统计记录的条数。
3、havinghaving⼦句可以让我们筛选成组后的各种数据,where⼦句在聚合前先筛选记录,也就是说作⽤在group by和having⼦句前。
⽽having⼦句在聚合后对组记录进⾏筛选。
⽰例:select类别, sum(数量) as数量之和from Agroupby类别having sum(数量) >18⽰例:Having和Where的联合使⽤⽅法select类别, SUM(数量)from Awhere数量>8groupby类别having SUM(数量) >10where和having的区别:作⽤的对象不同。
mysql数据库基础代码MySQL是一种开源的关系型数据库管理系统,采用了C语言编写,是一种功能强大、稳定可靠的数据库。
MySQL是一种面向对象的数据库,提供了多种编程语言的API,如C,C++,Perl,Python等。
MySQL广泛用于Web应用程序开发,常常和PHP一起使用。
一、数据库创建和删除1.创建数据库:创建数据库的命令为:CREATE DATABASE database_name;其中,database_name指所要创建的数据库名称。
下面是实例代码:CREATE DATABASE `testdb`;2.删除数据库:删除数据库的命令为:DROP DATABASE database_name;其中,database_name指所要删除的数据库名称。
下面是实例代码:DROP DATABASE `testdb`;二、表的创建操作1.创建表:语法:CREATE TABLE table_name( column_name1 data_type [PRIMARY KEY|UNIQUE], column_name2 data_type [PRIMARYKEY|UNIQUE], … );其中,column_name指所要创建的表的列名,data_type是指所要创建的表的列数据类型,[PRIMARY KEY|UNIQUE]是指该列是否为主键或唯一键。
下面是一个实例代码:CREATE TABLE `student` (`id` INT(10) NOT NULL AUTO_INCREMENT,`name` VARCHAR(10) NOT NULL,`sex` VARCHAR(5) NOT NULL,`age` INT(3) NOT NULL,`address` VARCHAR(100) NOT NULL,PRIMARY KEY (`id`)) ENGINE=INNODB DEFAULT CHARSET=utf8;2.删除表:删除表的命令为:DROP TABLE table_name;其中,table_name指所要删除的表名称。
➢创建数据库①对话方式创建数据库新建连接密码123456双击连接→右键新建数据库→双击打开新建数据库②语句创建数据库CREATE DATABASE <数据库名>;DEFAULT CHARACTER SET utf8(字符集名)DEFAULT COLLATE utf_general_ci(排列规则名);右键连接→新建查询→刷新; :结束符(英文)新建表名重复先删除➢查看当前数据库下所有数据库列表SHOW DATABASES;➢指定默认数据库USE <数据库名>;➢修改数据库①对话修改选定数据库→右键编辑数据库②语句修改ALTER DATABASE <数据库名>修改数据DEFAULT CHARACTER SET utf8(字符集名)DEFAULT COLLATE utf_general_ci(排列规则名);➢删除数据库DROP DATABASE <数据库名>;刷新查看是否删除➢创建数据表①对话指定表双击→表→表右键→新建表点击表→对象→新建表通过工具栏设置→保存②语句创建USE <数据库名> ;CREATE TABLE <表名>(字段名1 数据类型 [属性] [索引],字段名2 数据类型 [属性] [索引],……字段名n 数据类型 [属性] [索引]) [存储引擎] [表字符集];➢查看数据库中所有数据表USE <数据库名>;SHOW TABLES;➢复制数据表USE <数据库名>;CREATE TABLE <新表名> LIKE <旧表名>;➢用语句创建临时表CREATE TEMPORARY TABLE <表名>(字段名1 数据类型 [属性] [索引], 字段名2 数据类型 [属性] [索引], ……字段名n 数据类型 [属性] [索引] ) [存储引擎] [表字符集];➢查看表结构DESCRIBE或DESC <表名>;➢查看数据表的创建语句SHOW CREATE TABLE <表名>;➢修改表结构①字段ALTER TABLE <表名>ADD <新字段> DATE AFTER <已有字段>;②字段类型ALTER TABLE <表名>MODIFY <新字段> <要修改字段类型>;③字段名ALTER TABLE <表名>CHANGE <新字段> <更名> <数据类型>;➢删除字段ALTER TABLE <表名>DROP <字段>;➢向表中插入数据①插入一行数据INSERT INTO <表名> (id,sNo,sName) VALUES(3,'130','yy');②插入多行数据(逗号)INSERT INTO <表名>(id,sNo,sName) VALUES(4,'131','uu'),(5,'132','nn');➢修改表中数据修改已有数据WHERE :限定要更新的数据行UPDATE <表名>SET 字段名1=' ' , 字段名2=' ' , ……WHERE 条件=' ';➢删除表中限定(WHERE)数据DELETE FROM <表名>WHERE 条件=' ';➢清空表中数据TRUNCATE <表名>;➢删除数据表DROP TABLE <表名>;➢选择所有字段SELECT * FROM <表名>;➢选择指定字段SELECT 字段名1,字段名2,字段名3,字段名n FROM student;➢定义字段别名SELECT 字段名1 AS '列标题1',字段名2 AS '列标题2', 字段名n AS '列标题n' FROM student;➢使用比较运算符进行查询SELECT * FROM 表名WHERE 查询条件;➢模糊查询SELECT * FROM 表名WHERE 字段名 LIKE '关键字';➢范围比较查询SELECT * FROM 表名WHERE 字段名 BETWEEN '值1' AND '值2';成绩不在即NOT➢范围比对查询SELECT * FROM 表名WHERE 字段名 IN (值1,值2,值n);➢判断空置(NULL)进行查询SELECT * FROM 表名WHERE 字段名 IS NULL;➢对查询结果进行排序降序SELECT * FROM 表名WHERE 查询条件ORDER BY 字段名 DESC;升序SELECT * FROM 表名ORDER BY 字段名 ASC;有升序有降序SELECT * FROM 表名ORDER BY CONVERT (字段名 using gbk) ASC , 字段名 DESC;中文字符串字段的排序不会按照中文拼音的顺序进行排序ORDER BY CONVERT (字段名 using gbk) ASC/DESC ;。