Mysql教程:(一)数据库常用基础命令
数据库常用命令
1、登录
- 进入数据库,在win系统下,打开cmd,切换用户权限,进入root:
- 沒权限,用root登录:
mysql -uroot
- 如果root有密码:
mysql -uroot -p
2、数据库创建
- 查询所有数据库:
show databases;
- 创建数据库:
create database <数据库名>;
- 删除数据库:
drop database <数据库名>;
- 进入数据库:
use <数据库名>;
3、数据表的操作
1)查询数据库下表:
show tables;
2)创建表1:
create table student(id int(4) primary key,name char(20));
- 注释: id为表的第一列;
- int数字类型;
- primary key主键的意思,列不能重复。
- Name为表的第二列名字。
- char:类型;
创建表2:
create table score(id int(4) not null,class int(2));
注释: not null字段不能为空。
创建表3:
create table student1(id int(4) not null,name char(20)); Field (列名),Type(字段类型),null(是否为空),key(主键)
3)查看表结构:
describe student; 或 desc student;
4)修改表名:
alter table <表名> rename <表名>;
5)删除表:
drop table <表名>;
6)修改表字段信息:
alter table student change id id int(20);
7)增加表字段信息:
alter table student1 add class int(4) not null after id;
8)删除一个表字段:
alter table student1 drop number;
4、表数据的增删查改
提示:在数据库导入表时,要修改列的字段类型并设置主键;
主键:表中经常有一个列或多列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可强制表的实体完整性。当创建或更改表时可通过定义 PRIMARY KEY 约束来创建主键。一个表只能有一个 PRIMARY KEY 约束,而且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束确保唯一数据,所以经常用来定义标识列。
1) 表数据新增格式:
insert into 表格名(列名) values(值) 先导入student和score表,表为Excel,可以自己编写。 例子: mysql> insert into student(id,class,number,name) values(81,4,19,'stu81'); mysql> insert into student(id,class,number) values(82,4,20); mysql> insert into student values(83,4,21,'stu83'); mysql> alter table student change id id int(2) auto_increment; 注释:auto_increment以1为单位自增长的意思; mysql> insert into student(class,number,name) values(4,22,'stu84'); mysql> alter table score change id id int(4) auto_increment; 注释:auto_increment自增长的意思。+1。输入该命令,表格会在新输入自动新增长新的一行,id也会成自增。 mysql> insert into score(class,number,maths,chinese,english) values(4,19,80,78,98); mysql> insert into score(class,number,maths,chinese,english) values(4,20,98,88,68); mysql> insert into score(class,number,maths,chinese,english) values(4,21,91,83,78); mysql> insert into score(class,number,maths,chinese,english) values(4,22,67,83,88);
2) 查询表数据格式:
select * from <表名> where
注释:语句以逗号做分隔,*通配符,select是展示的意思,where是条件;
例子: 查询学生信息表中所有信息:select * from student;
查询成绩表中,列id,class,chinese的信息:select id,class,chinese from score;
3)表数据排序操作:
升序:order by 降序:升序语句末尾加 desc 例子:查询成绩表中,列id,chinese的信息并且以列chinese排序 select id,chinese from score order by chinese;(升序) select id,chinese from score order by chinese desc;(降序)
4)表数据查询操作:
(1)查询1班与2班的成绩信息:
mysql> select * from score where class="1" or class="2";
(2)查询语文为77并且数学为88的成绩信息: mysql> select * from score where chinese=77 and maths=88;
(3)查询1,2,3班的成绩信息:
mysql> select * from score where class in (1,2,3); 查询不为4班的成绩信息:
mysql> select * from score where class not in
(4)查询不为4班的成绩信息:
mysql> select * from score where class !=4; 注释: !在数据库里面为否定的意思:
(5) 查询1班到3班的成绩信息:
mysql> select * from score where class between 1 and 3; 注释: between:在```之间,中间的意思:
(6) 查询不为3班与4班的成绩信息:
mysql> select * from score where class not in (3,4);
(7)查询语文成绩大于等于80小于等于90的成绩信息
mysql> select * from score where chinese>=80 and chinese<=90;
(8) 统计成绩表的总数:
mysql> select count(*) from score;
(9) 按照英语去重,显示英语成绩信息:
mysql> select distinct English from score;
注释: distinct 去除重复的意思;
(10) 显示4到7行的数据:mysql> select * from score limit 3,4; 注释:数据库数据排列:0,1,2,3; 3显示第4行; 4,5,6,7共有4行; 3,4 ; 3表示第4行,4表示从第3行开始到第7行,共有4行;
(11) 按chinese排序,显示4,5行数据:
mysql> select * from score order by chinese limit 3,2;
(12) 查询出学生姓名为stu10的学生信息:mysql> select * from student where name='stu10'; 注释:只要不是数字,有汉字数字字母多种组成的形式都要加单引号,表示字符串。
(13) 查询出学生姓名为stu10或者stu15的学生信息:
mysql> select * from student where name in ('stu10','stu15');
(14) 分组查询每个班的人数:
mysql> select class,count(*) from student group by class;
4、作业:
1,查询4班的成绩信息:
select * from score where class="4";
2,查询4班,语文成绩大于80小于90的成绩信息: select * from score where class in (4) and chinese>80 and chinese<90;
3,查询学生表中5到10行的数据:
select * from student limit 4,6;
4,显示3班语文成绩为90,数学成绩为68,的class与number信息,: select class, number from score where class="3" and chinese=90 and maths=68;
5,查询出4班成绩并且按语文成绩倒序排序: select * from score where class="4" order by chinese desc;
6,查询2班与3班,语文成绩与数学成绩都大于80的class与number信息: select class, number from score where class in (2,3) and chinese>80 and maths>88;
Mysql教程:(一)数据库常用基础命令的更多相关文章
- MySQL数据库入门常用基础命令
MySQL数据库入门———常用基础命令 数据——公司的生命线,因此在大多数的互联网公司,都在使用开源的数据库产品,MySQL也因此关注度与使用率非常的高,所以做为运维的屌丝们,掌握它的一些基 ...
- Linux常用基础命令整理:关机命令、查看目录下文件命令等
Linux常用基础命令整理:关机命令.查看目录下文件命令等 整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能Ctrl+c按键-- ...
- 【转】SQL Server、Oracle、MySQL和Vertica数据库常用函数对比
SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 1. 绝对值 S:select abs(-1) valu ...
- CentOS常用基础命令大全
这篇文章主要介绍了CentOS常用基础命令大全,学习centos的朋友需要掌握的知识,需要的朋友可以参考下 1.关机 (系统的关机.重启以及登出 ) 的命令shutdown -h now 关闭系统(1 ...
- Docker 使用笔记-常用基础命令
常用基础命令 环境:Linux Ubuntu 1.查看docker信息 docker version | docker info 2.启动docker服务 sudo systemctl start d ...
- Vertica的这些事(二)——SQL-Server、Oracle、MySQL和Vertica数据库常用函数对比
SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 绝对值 S:select abs(-1) value O ...
- Linux常用基础命令(二)
Linux常用基础命令 一.-ls--列表显示目录内容 二.-alias--设置别名 三.-du--统计目录及文件空间占用情况 四.-mkdir--创建新目录 五.-touch--创建空文件 六.-l ...
- MySQL数据库入门———常用基础命令
mysql 连接数据库命令: MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格) mysql -h localhost -u root -p ...
- Mysql数据库常用的命令 数据备份 恢复 远程
远程数据库 格式: mysql -h主机地址 -u用户名 -p用户密码数据库 mysql -h 42.51.150.68 -u yang -p discuz mysql设置密码 mysql>us ...
随机推荐
- JMeter多个线程组的使用说明
Run Thread Groups consecutively (i.e one at a time),即独立运行每个线程组(例如在一个组运行结束后启动下一个) https://help.aliyun ...
- javascript 对象池
* 一个对象池的简单应用 tool tip tootip.html <html> <head> <meta charset="UTF-8"> & ...
- Appium 自动化测试改造思路
流水账脚本 从头到尾编写测试脚本 PO封装 业务行为与操作具体页面元素分离 basepage封装 如封装find方法,目的时增强稳定性 数据驱动封装 将常用的数据改为配置文件 为构建测试平台打基础
- 集群环境下的Session管理
1. 集群环境下的管理HTTPSSession所遇到的问题 一台服务器对应这个一个session对象,无法在另外一个服务器互通 解决方法: 1. Session 的 Replication(复制)将当 ...
- [转载]CentOS 下安装LEMP服务(Nginx、MariaDB/MySQL和PHP)
LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作用.正如其名称所暗示的, LEMP 包是由 Linux.nginx.MariaDB/MySQL 和 P ...
- HTML常用的css属性(及其简写)
这篇文章主要介绍几个常用css属性和简写 本文目录: 1.背景属性 2.边框属性 3.字体属性 4.外边距 5.填充 6.颜色 1.background[背景属性] background-color ...
- 解决 Delegate IDE build/run actions to Maven 编译两次的问题
起因:我的电脑炸了,吸取教训,以后重要的东西千万不要存在C盘,特别是我们 IT 行业的,代码和文档都是一点一点积累的经验.突然没了,总感觉少了点啥,平时我的代码都是放在D盘,但是很多文档放在C盘,导致 ...
- 题解 [AGC017C] Snuke and Spells
题目传送门 Description 有 \(n\) 个球排在一起,每个球有颜色 \(a_i\),若当前有 \(k\) 个球,则会将所有 \(a_i=k\) 的球删掉.有 \(m\) 次查询,每次将 \ ...
- 题解 [HNOI2016]大数
题目传送门 题目大意 给出一个\(n\)个数的字符串,有\(m\)次查询,对于该串的子串\([l,r]\)有多少个子串满足是固定素数\(p\)的倍数. 思路 其实很简单,但是一开始想偏了...果然还是 ...
- iostream 操作符
iostream 操作符 Input/output manipulators - cppreference.com