翼度科技»论坛 编程开发 mysql 查看内容

MySQL常用数据库语句

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
==数据库==
1、创建数据库
create database [IF NOT EXISTS] 数据库名;
2、删除数据库
drop database [IF EXISTS] 数据库名;
3、切换数据库
select database();
4、查询数据库
show databases;
————————————————————————————
==数据表==
1、创建数据表
create table 表名(   
          字段名1  字段类型1(字段长度) [ 约束 ]  [ comment  字段1注释 ],  -- 不是 ; 号   
          字段名2  字段类型2(字段长度) [ 约束 ]  [ comment  字段2注释 ],       
          ....       
          字段名n  字段类型n(字段长度) [ 约束 ]  [ comment  字段2注释 ] -- 最后一列后面是没有,的
) [ comment  表注释 ];
2、删除数据表
==删除表==: drop table [ if exists ] 表名
3、修改数据表
==添加字段==: alter table 表名  add  字段名  类型(长度)
==修改字段类型==: alter table 表名 modify  字段名  新数据类型(长度)
==修改字段名和字段类型==: alter table 表名 change  旧字段名  新字段名  类型 (长度)
==删除字段==: alter table 表名 drop  column 字段名
==修改表名==: rename table 表名 to  新表名
4、查询数据表
==查询当前数据库所有表==: show tables
==查询表结构==: desc  表名
==查询建表语句==: show create table 表名
————————————————————————————
==数据==
1、添加数据
==指定字段添加数据==: insert into 表名 (字段名1, 字段名2)  values (值1, 值2)
==全部字段添加数据==: insert into 表名 values (值1, 值2, ...)
==批量添加数据(指定字段)==: insert into 表名 (字段名1, 字段名2)  values (值1, 值2), (值1, 值2)
==批量添加数据(全部字段)==: insert into 表名 values (值1, 值2, ...), (值1, 值2, ...)
2、删除数据
==删除数据==: delete  from  表名  [ where  条件 ]
3、修改数据
==修改数据==: update  表名  set  字段名1 = 值1 , 字段名2 = 值2 , .... [ where  条件 ]
4、查询数据
==查询指定字段==: select  字段1, 字段2, 字段3  from   表名
==查询所有字段==: select  *  from   表名
==设置别名==: select  字段1  [ as  别名1 ] , 字段2  [ as  别名2 ]   from   表名
==去除重复记录==: select  distinct  字段列表  from   表名
==条件查询==: select  字段列表  from   表名   `where   条件列表 `
==聚合函数==: 将一列数据作为一个整体,进行纵向计算,语法为: select  `聚合函数(字段名)`  from   表名
==分组过滤==: select  分组字段,聚合函数()  from   表名   `group  by  分组字段名`  `having  分组后过滤条件`
==排序:== select  字段列表  from   表名  order  `by  字段1  排序方式1 , 字段2  排序方式2`
ASC:升序(默认值)DESC:降序
==分页:== select  字段列表  from   表名  `limit  起始索引, 查询记录数`

select 集合函数() from 表 [where 条件]  [group by 分组]  [having 过滤] [order by 排序] [limit 截取]
1. 普通条件: where
2. 排序: order by 列 asc升序(默认) desc降序
3. 聚合函数: count(列)
4. 分组: group by 列
5. 过滤: having 过滤条件
6. 截取: limit 开始,几个

————————————————————————————
==外键约束==
1、创建表的时候添加
        create table 表名(
                  列名  列类型,
                  [constraint 约束名: 外键列_fk]  foreign key (列名)  references  主表(主键)
            )
2、创建表之后单独添加
        alter table 表名 add [constraint 约束名]  foreign key (列名)  references  主表(主键)
————————————————————————————
==连接==
==交叉连接==:select * from  左表,右表
==内连接==
隐式内连接:select * from  左表,右表 where 连接条件
显示内连接:select * from 左表 [inner] join 右表 on 连接条件
==左外连接==
select * from 左表 left [outer] join 右表 on 连接条件
==右外连接==
select * from 左表 right outer join 右表 on 连接条件
==子查询==
单个值,使用 = > <  等进行条件判断 :    SELECT 字段列表 FROM 表 WHERE 字段名 = (子查询);
多个值,使用in、not in进行条件判断 :    SELECT 字段列表 FROM 表 WHERE 字段名 in (子查询);
一张表,将此结果声明为临时表来使用 :    SELECT * FROM (子查询) AS 表 JOIN 表 ON 条件;

来源:https://www.cnblogs.com/Rover20230226/p/17364330.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具