基础知识
SQL语言分为4个部分:DDL(定义)、DML(操作)、DQL(查询)、DCL(控制)
快捷键
\G 格式化输出(文本式,竖立显示)
\s 查看服务器端信息
\c 结束命令输入操作
\q 退出当前sql命令行模式
\h 查看帮助
终端进入
mysql -u 用户名 -p;
输入密码
终端退出
exit; 或者 quit;
基本操作——数据库
查看数据库 show databases;
创建数据库 create database 库名 default charset=utf8;
删除数据库 drop database 库名;
打开数据库 use 库名;
数据库导出:mysqldump -u root -p 原库名 > ~/Desktop/文件夹名字/原库名.sql
数据库导入:mysql -u root -p 新库名 < ./原库名.sql
基本操作——数据表
查看表: show tables;
create table 表名(
字段名 类型 字段约束,
字段名 类型 字段约束,
字段名 类型 字段约束,
)engine=innodb default charset=utf8;
创建表: create table 表名(字段名1 类型,字段名2 类型)engine=innodb default charset=utf8;
创建表: 如果表不存在,则创建, 如果存在就不执行这条命令
create table if not exists 表名(字段1 类型,字段2 类型);
删除表: drop table 表名;
修改表结构:alter table 表名 action (更改的选项)
修改表名:alter table 原表名 rename as 新表名
表结构: desc 表名;
查看建标语句:show create table users;
基本操作——数据
插入
insert into 表名[(字段列表)] values(值列表...);
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);
insert into 表名(字段1,字段2,字段3) values(a值1,a值2,a值3),(b值1,b值2,b值3);
查询
select * from 表名;
select 字段1,字段2,字段3 from 表名;
select * from 表名 where 字段=某个值;
select 字段列表|* from 表名
[where 搜索条件]
[group by 分组字段 [having 分组条件]]
[order by 排序字段 排序规则]
[limit 分页参数]
1.可以在where条件中使用=,<,> 等符合进行条件的过滤
2.可以使用like语句进行某个字段的模糊搜索
3.where子句中的like在使用%或者_进行模糊搜索时,但是效率不高
4.group by 语句根据一个或多个列对结果集进行分组
5.having时在分组聚合计算后,对结果再一次进行过滤,类似于where。where过滤的是行数据,having过滤的是分组数据。
6.排序时要使用orderby对返回的结果进行排序,Asc 升序,默认,desc降序。
7.limit m,n 跳过m跳数据,提取n条数据
修改
update 表名 set 字段1=值1,字段2=值2,字段n=值n... where 条件
update 表名 set 字段=某个值 where 条件;
update 表名 set 字段1=值1,字段2=值2 where 条件;
update 表名 set 字段=字段+值 where 条件;
删除
delete from 表名 [where 条件],没有where就一行一行的
delete from 表名 where 字段=某个值;
网友评论