mysql初级mysql

mysql第二周

2018-03-31  本文已影响0人  初见_ac87

(查询条件 )

查询的基本语法 

select * from 表名;

 消除重复行

select distinct 字段名 from 表名;

where条件语句

select * from 表名 where 条件;


比较运算符

查询表号编号大于3的学生

select * from 表名 where id>3;

查询编号不大于4的科目

select * from 表名 where id<=4;

查询姓名不是“黄蓉”的学生

select * from students where sname!='黄蓉';

select * from students where isdelete=0;


逻辑运算符

查询编号大于3的女同学

select * from students where id>3 and gender=0;

查询编号小于4或没被删除的学生

select * from students where id<4 or isdelete=0;


模糊查询

查询姓黄的学生

select * from students where sname like '黄%';

查询姓黄并且名字是一个字的学生

select * from 表名 where 字段名 like '黄_';

查询姓黄或叫靖的学生

select * from students where sname like '黄%' or sname like '%靖%';


范围查询

查询编号是1或3或8的学生

select * from students where id in(1,3,8);

查询学生是3至8的男生

select * from students where id between 3 and 8 and gender=1;


空判断

查询没有填写地址的学生

select * from students where hometown is null;

查询填写了地址的学生

select * from students where hometown is not null;

查询填写了地址的女生

select * from students where hometown is not null and gender=0;


聚合

count(*)表示计算总行数

查询学生总数

select count(*) from students;

查询女生的编号最大值

select max(id) from students where gender=0;

查询未删除的学生最小编号

select min(id) from students where isdelete=0;

查询男生的编号之和

select sum(id) from students where gender=1;

查询未删除女生的编号平均值

select avg(id) from students where isdelete=0 and gender=0;


(查询分组)

可以对分组后的数据进行统计,做聚合运算

语法:

select 列1,列2,聚合...

from 表名

group by 列1 列2 列3...

分组后进行条件筛选

select 列1,列2,聚合... from 表名

group by 列1,列2,列3...

having 条件语句

where与having对比

where是对from后面进行筛选

having是对group by结果筛选


(查询)排序

select * from 表名

where 条件

order by 列1 desc,列2 desc,列3 asc

查询(分页)索引从0开始

select.from 表名

limit start(开始) count(次数)


外键

添加外键的两种方式

1、创表时添加 pid int

             foreign key(字表的外键字段) references(父表主键的字段名)

2、创建好数据表时添加外键数据 

alter table 字表的数据表名称 

add foreign key(子表的外键字段) references 父表的数据表名称(父表的主键字段) 

上一篇下一篇

猜你喜欢

热点阅读