mysql
1. 主要类型:
数字:smallint int long 文本:char varchar日期:date datetime
2. 查看库:Show databases;
创建数据库Create database mysql character set utf8;
使用数据库:Use mysql;
3. 查看表:show tables;
创建表:CREATETABLE USER (
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,
NAME VARCHAR (20),
PASSWORD VARCHAR (50),
sex VARCHAR (2)
) ;
删除表:DROPTABLE USER;
4. 主键:
create table student(
sid int not nullauto_increment,
name varchar(20) notnull,
primary key(sid)
);
5. 外键:
create table score(
cid int not nullauto_increment primary key,
score int,
sid int,
foreign key(sid)references student(sid)
);
6. 显示表结构:desc user;
7. 删除表:drop user;
8. 更改表结构:
增加列:alter table user add name varchar;
增加主键:alter table user add primary key(sid);
增加外键:alter table user add foreign key (cid) references course(cid);
设置默认值:alter table user alter address set default ‘地址不详’;
更改列名:alter table user change name sname varchar;
更改列里面的属性:alter table user modify name varchar(50);
删除列:alter table user drop sname;
删除主键:alter table user drop primary key;
更改表名:alter table user rename as newuser;
9. 表中插入数据:INSERT INTO student (NAME, sex, age, email) VALUES ('宋仲基', '男', '25','22@qq.com');
10. 更新表:UPDATE student SET sex = '男' WHERE sid = '1';
11. 删除数据:DELETE FROM student WHERE sid = '2';
12. 查询:select * from student limit 0,100;
13. 通配符:
‘%’:任意长度的字符串
‘_’:任意单个字符
14. 查询记录操作:
from子句:指定查询数据的表
where子句:查询数据的过滤条件
group by子句:对匹配where子句的查询结果进行分组
having子句:对分组后的结果进行条件限制
order by子句:对查询结果结果进行排序,后面跟desc降序或asc升序(默认)。 limit子句:对查询的显示结果限制数目
procedure子句:查询存储过程返回的结果集数据
15. 集函数:
a) 记数函数:count(列名) 计算元素的个数
b) 求和函数:sum(列名) 对某一列的值求和,但属性必须是整型
c) 计算平均值:avg(列名)对某一列的值计算平均值
d) 求最大值:max(列名) 找出某一列的最大值
e) 求最小值:min(列名) 找出某一列的最小值
16. Where语句中使用谓词:
BETWEEN AND :在两数之间
NOT BETWEEN AND :不在两数之间
IN <值表> :是否在特定的集合里(枚举)
NOT IN <值表> :与上面相反
LIKE :是否匹配于一个模式
IS NULL(为空的)或IS NOT NULL(不为空的)
REGEXP : 检查一个值是否匹配一个常规表达式。
17. 快速复制表:create table newstudent select * from student;
18. 快速复制表结构:create table newstudent select * from student where false;