mysql 常用操作之单表查询

mysql查询

单表查询:

-------------------创建dog表:字段——id、name、brand、sex、age

-> create table dog(
-> id int primary key auto_increment,
-> name varchar(10) not null unique,
-> brand varchar(10),
-> sex enum('公','母') default '公',
-> age int
-> );

注:此处sex字段用了一个枚举类型制定为公母,且默认为公

  name字段添加了非空和唯一约束

(唯一约束的值可为null,mysql的null可以代表任何类型,但又不是任何类型,null与null之间不可以比较,即每一个null都是不同的,所以即使添加了unique约束,它的值也可以为null,因为每一个null都是不同且唯一的)

----------------插入信息:

-> insert into dog(name,brand,sex,age) values('小白','狼狗','母',round(rand()*(10-1)+1)),
-> ('来福','土狗','母',round(rand()*(10-1)+1)),
-> ('乐乐','吉娃娃','母',round(rand()*(10-1)+1)),
-> ('旺旺','哈士奇','母',round(rand()*(10-1)+1));

这里可以直接插入多条语句,id自增,年龄直接调用有一个随机的函数生成1-10的整数;

-------------------基本的查询

select * from dog where id>3 and age<5;    //where...and...

select * from dog where id between 3 and 6;  //where ...between...and

 

select brand 品种,count(*) 数量 from dog group by brand;    //group by...  别名

select brand 品种,count(*) 数量 from dog group by brand having brand='土狗' or brand='哈士奇';   //group by...having...or...

select * from dog order by age;    //order by...

select * from dog limit 2,5;    

注:limit后的第一个为索引,类似于下标,第二个为要显示的记录条数。该命令的意思是从下标为2(即第三条记录)开始,一共显示5条记录,limit一般用于分页。

一些基本的聚合函数:sum()、avg()、count()、max()、min()

          now()、rand()   //now()获取当前时间 //rand()会生成一个随机数

 

posted @ 2016-05-31 22:05  倦刻懒骨  阅读(539)  评论(0编辑  收藏  举报