MySQL基础操作
1.进入命令行
1.进入MySQL命令行模式,Windows,linux打开终端输入以下命令
mysql -u root -p
若提示mysql不是内部命令,可参考我的另一篇文章解决mysql不是内部命令问题
2.基础语法
2.1 数据库基本管理
1.查看数据库
show databases;
2.选择数据库
use mysql;
# use 数据库名称;
3.查看数据表
show tables;
4.查看表结构
show columns from help_topic;
# show columns from 表名称;
2.2 数据库基本操作
1.创建数据库
create database test;
#create database 数据库名称;
2.删除数据库
drop database test;
#drop database 数据库名称;
2.3 数据表操作
1.创建数据表
#基础语法
create table table_name(column_name column_type);
2.删除数据表
#基础语法
drop table table_name;
3.插入数据
insert into table_name(column_name1,column_name2,...)
values( value1,value2,...)
#column_name表示数据表的列名,value表示对应的列插入的数据
4.查询数据
select * from table_name;#查找表中的全部数据
select column_name,column2_name from table_name;#查找表中的几列数据
select * from table_name where condition1[and[or]]congition2;#精确查找
5.修改数据
update table_name set field1=new_values1,field2=new_values2
[where Clause]
6.删除数据
delete from table_name [where Clause]
7.示例
1)创建数据库
create database school;
2)使用school数据库
use school;
3)创建数据表class
create table `class`(
`id` INT UNSIGNED AUTO_INCREMENT,
`number` INT(10) NOT NULL,
`name` VARCHAR(50) NOT NULL,
`class_name` VARCHAR(50) NOT NULL,
PRIMARY KEY(`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
4.插入数据
insert into class(number,name,class_name)
values(1903210086,'贾明','计科1903');
一次插入多条数据
insert into class(number,name,class_name)
values(1903210087,'张三','软工1902'),
(1903210088,'麻子','计科1903'),
(1903210089,'李四','软工1902');
5.查询数据
select * from class;
#查询表中全部数据
select id,name,class_name from class;
#查询表中的序号,姓名,班级
select * from class where name='张三';
#查询表中张三的信息
select * from class where name='麻子' or class_name='计科1903';
#查找姓名是麻子或者班级是计科1903班的学生
select * from class where name='麻子'and class_name='计科1903' or number=1903210086;
#查找姓名是麻子并且班级是计科1903班或者学号是1903210086的学生
6.修改数据
update class set class_name='大数据1901' where name='贾明'
7.删除语句
delete from class where name='贾明';
2.4 like 字句
MySQL中可以用select命令读取数据,同时也可以在select语句使用where字句查找所需数据。在查找时,有时需要获取某个字段中含有某个字符的所有记录,这时候就需要用到like字句了。
like字句中用%表示所有字符,如果没有%,那么like字句与“=”作用相同。like字句同样可以使用and和or指定一个或者多个条件。
实验所用数据来自零基础学MySQL
select * from class where number like '%87';
select * from class where number like '%89' or name like '张%' and class_name like '软工1902';
2.5 order by 排序
MySQL可以采用order by 字句进行排序,使用任何字段作为排序的条件也可以添加where …like字句设置查询条件,使用ASC 或者DESC设置结果是按升序排列还是降序排列。
select * from class order by number desc;
2.6 group by 分组
GROUP BY 语句根据一列或者多列对结果进行分组,group by 语法如下:
select column_name,function(column_name) from table_name
[where column_name operator value]
gropu by column_name;
#其中function表示mysql中的一些函数,常见的有SUM,AVG,COUNT等
示例
对class表中的记录根据class_name分组并统计个数
select class_name,count(class_name) from class
group by class_name;
3.注意事项
1.创建数据库时
列名称的符号使用的是反引号,不是英文的引号
列名称的符号使用的是反引号,不是英文的引号
列名称的符号使用的是反引号,不是英文的引号
重要的事情说三遍
2.整个运行环境内使用的是英文状态下的标点符号。
4.笔者闲谈
更多内容详情查看MySQL开发文档,MySQL开发文档语句语法
不足之处大家批评指正,持续更新中。