欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL

程序员文章站 2023-12-22 22:48:40
...
Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL-菜鸟在努力的学飞翔!

作为一枚菜鸟不容易啊,这个世界好难生存啊

继续在简陋的cmd命令里面敲击着sql命令!


首先这里着重的说下通配符*的问题!


如果让大家搜索全部的话 肯定是想也不想直接一个 select * from tablename 吧!

但是 这样的话是非常影响性能的!

如果你的列有很多的话!

因为在数据库里面

每次select * 都要把 * 解析成各个属性,所以当在实际开发当中千万不要偷懒

要列出自己要搜索的所有属性!从而提高整体的效率

for example:

select id,name,gender,age,job,createdate from teacher_tab order by createdate desc;


order by 列名 desc 是按照XXX排序 ,降序

order by 列名 不加,升序

效果如图1:

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL

当你排列顺序遇到好多相等的时候,就可以考虑有第二列来排列

比如

select id,name,gender,age,job,createdate from teacher_tab order by createdate desc,age;
效果如图2 是两种排序方式

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL


接下去我们怎么进行分组:

比如说我们要统计老师的数目,然后对老师性别分别进行统计 g=gg=男 m = mm = 女

代码如下“:

select gender ,count(gender) from teacher_tab group by gender;

效果如图3:

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL

假如说我们只要计算m的个数,我们可以加having gender = 'm';

如图4:

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL


不过不建议用having 当数据庞大之后,我们要在分组后,又进行搜索话是极耗费性能的。

建议使用如下代码:

select gender,count(gender) from teacher_tab where gender = 'm';

有时候我们对列名不太满意,想自定义使用其他的名字,这时候就需要用到as 别名了


代码如下:

select t.age,t.name from teacher_tab t;
select count(id) as counts from teacher_tab;
我们可以给列取别名也可以给表取别名!

效果如图5:

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL

还有使用limit 限制 limit 起始量,偏移量

for example :

select * from teacher_tab limit 0,3;
select * from teacher_tab limit 1,3;
0是从第一条开始

1是指第二条开始

3是指0后面三条记录

效果如图6:

Mysql 简单的命令语句续-*,as,group by,order by,group by,havin_MySQL

接下去是

事物的提交 回归等,下一篇再续

上一篇:

下一篇: