美文网首页
MySQL基本查询语句

MySQL基本查询语句

作者: Doooook | 来源:发表于2020-11-16 22:08 被阅读0次

DDL语句

数据库操作

创建数据库

create database 数据库名;
create database 数据库名 character set 字符集;

查看数据

查看数据库服务器中的所有的数据库:

show databases;

查看某个数据库的定义的信息:

show create database 数据库名;
image.png

删除数据库(慎用)

drop database 数据库名称;

其他数据库操作命令

切换数据库:

use 数据库;

查看正在使用的数据库:

select database();
image.png

表操作

字段类型

MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。

  1. 数值类型


    image.png
  2. 日期和时间类型


    image.png
  3. 字符串类型


    image.png

注意:
char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

查看表结构

desc 表名;
show create table 表名;

修改表

alter table 表名 add 列名 类型(长度) 约束; --修改表添加列. 
alter table 表名 modify 列名 类型(长度) 约束; --修改表修改列的类型长度及约束. alter table 表名 change 旧列名 新列名 类型(长度) 约束; --修改表修改列名. 
alter table 表名 drop 列名; --修改表删除列. 
rename table 表名 to 新表名; --修改表名 
alter table 表名 character set 字符集; --修改表的字符集

DML语句

插入语记录

insert into 表 (列名1,列名2,列名3..) values select (列名1,列名2,列名3..) from 表 
insert into 表 values select * from 表

更新记录

update 表名 set 字段名=值,字段名=值 where 条件;

删除记录

删除表中所有记录使用【delete from 表名】,还是用【truncate table 表名】? 
删除方式: 
- delete :一条一条删除,不清空auto_increment记录数。 
- truncate :直接将表删除,重新建表,auto_increment将置为零,从新开始。

DQL语句

完整DQL语法顺序:

SELECT DISTINCT 
  < select_list > 
FROM
  < left_table > < join_type > 
JOIN < right_table > ON < join_condition > 
WHERE
  < where_condition > 
GROUP BY < group_by_list > 
HAVING< having_condition > 
ORDER BY < order_by_condition > 
LIMIT < limit_number >

分组

-- 根据cid字段分组,分组后统计商品的个数.
select cid, count(*) from product group by cid;
-- 根据cid分组,分组统计每组商品的平均价格,并且平均价格 > 60;
select cid, avg(price) from product group by cid having avg(price)>60;
  • 注意事项
  1. select语句中的列(非聚合函数列),必须出现在group by子句中
  2. group by子句中的列,不一定要出现在select语句中
  3. 聚合函数只能出现select语句中或者having语句中,一定不能出现在where语句中。

相关文章

网友评论

      本文标题:MySQL基本查询语句

      本文链接:https://www.haomeiwen.com/subject/itttiktx.html