一:数据库语句
1、查询当前所有的数据库: show databases;
2、查看当前数据库的创建方式:查看数据库的编码表: show create database 库名;
3、创建数据库的语法: create database 数据库名;
4、创建数据库的语法: create database 数据库名 character set 编码表名;(注意:如果创建数据库指定的编码表是utf8,记住不能写utf-8.。utf-8 mysql不认识)
5、删除数据库的语法: drop database 数据库名;
6、修改数据库的编码集: alter database 数据库名称 character set 字符集;
7、切换数据库: use 数据库名;
8、查询当前正在使用的数据库: select database();
二:数据表结构的增删改查
1、创建数据库表的语法:
create table 表名(
列名 类型(长度), ----某一列,存放的数据是什么类型.长度表示允许列名存储数据的最大长度.
列名 类型(长度),
..........................
列名 类型(长度) ---最后一个列不需要逗号。
);
2、查看该数据库的所有的表: show tables;
3、查看表的列的信息(查看表结构): desc 表名;
三:单表创建约束
1、主键约束: primary key
2、自增长: auto_increment
3、唯一约束: unique
4、非空约束: not null
示例:
create table 表名(
id int primary key auto_increment,
name varchar(20) unique,
age int not null,
…………
);
5、外键约束: foreign key( 当前表中的列名 ) references 被引用表名(被引用表的列名);
注意:一般在开发中,被引用表的列名都是被引用表中的主键。
四:数据表结构修改
1、增加列语法: alter table 表名 add 列名 类型(长度) 约束;
2、修改现有列类型、长度和约束: alter table 表名 modify 列名 类型(长度) 约束;
3、修改现有列名称: alter table 表名 change 旧列名 新列名 类型(长度) 约束;
4、删除现有列: alter table 表名 drop 列名 ;
5、修改表名: rename table 旧表名 to 新表名;
6、修改表的字符集: alter table 表名 character set 编码集;
五:数据表内容的增删改
1、insert语句----向数据表插入数据
方式一:insert into 表名 (列名1,列名2,列名3......) values (值1,值2,值3......);
方式二:insert into 表名 values (值1,值2,值3......);
2、update语句----数据内容修改操作
update 表名 set 列名=值,列名=值..... where条件语句;
3、delete语句----删除表中数据的语句
delete from 表名 where条件语句
4、truncate 语句----删除数据
truncate table 表名:
***注意:truncate与delete的区别:
1.delete
DML语言
数据还可以找回来,恢复回来
可以有条件的删除。DELETE FROM 表名 WHERE 条件
2.truncate table
DDL语言
数据不可以恢复
先将整个表删除,再重新创建
删除速度比delete快。
***注意:delete与drop的区别:
1.delete
把表中的所有数据全部删除,但是表还存在。还可以向表中继续添加数据。
2.drop
把表从数据库中删除。表已经不存在,不能再向表中添加数据。
六:SQl中的聚合函数
count(数目) : 统计个数(行数),统计有多少行,或者有多少条数据。
sum(和)函数:求和。
avg(均值)函数:求平均值。
max(最大值):求最大值。
min(最小值):求最小值。
1、count函数--统计记录数(统计行数): select count(*)或者count(具体列名) from 表名;
注意: 1.count(具体列名):在根据指定的列统计的时候,如果这一列中有null的行,该行不会被统计在其中。按照列去统计有多少行数据。
2、 select count(列名) from 表名; 按具体列来进行统计行数。
select count(*) from 表名; 统计表中的行数。
2、sum函数: select sum(列名) ,sum(列名) ,......from 表名;
3、truncate截取函数: truncate(列名, 截取的小数位) 表示截取的意思,保留几位小数。
4、avg函数: select avg(列名) from 表名;
5、max,min函数: select max(列名),min(列名) from 表名;
七:查询总结
from 表名
where 条件:
逻辑运算符:and or not
比较运算符:< > <= >= <> =
在....之间:between...and...
in():任意的一个条件成立即可
is null/is not null
模糊匹配:like % _
group by 列:对列进行分组。
having 条件:
逻辑运算符:and or not
比较运算符:< > <= >= <> =
在....之间:between...and...
int(set)
is null/is not null
模糊匹配:like % _
聚合函数(sum,avg,max,min,count)
order by desc(降序)/asc(升序,默认)
|