本文主要是介绍MySQL必会知识精华4(查询数据-SELECT),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们的目标是:按照这一套资料学习下来,大家可以完成数据库增删改查的实际操作。轻松应对面试或者笔试题中MySQL相关题目
上篇文章我们先做一下数据库的基础知识以及MySQL数据库的连接,以及查看库和库中列表的信息。本篇文章主要介绍查询的方法。
1、SELECT语句
我们用SELECT关键字来检索表数据,也就是进行查询;
使用SELECT 语句来查询,至少要写明两个信息:想选择什么字段(或列),从什么地方选择(表名)
2、查询单个列
SELECT 字段名 FROM 表名
实例如下:
注意:1)这里查询默认是不排序的;
2)结束SQL语句必须用(;),即多条语句之间使用分号
3)SQL语句是不区分大小写的,所以有时有人写select 也是一样执行的;
但是,开发人员一般将关键字使用大写,而对列和表名使用小写,这样易于阅读和调试。
4)空格:在处理SQL语句时,空格会被忽略。
3、查询多个列
查询多个列也很简单:SELECT 后面跟多个字段,字段名之间用逗号隔开
SELECT 字段1,字段2,字段3...
FROM 表名
SELECT cust_id,balance,card_type FROM card;
4、查询表的所有列
查询所有列的方法: SELECT * FROM 表名
使用通配符* 来代表查询表中的所有列
实例:SELECT * FROM card
注意点:使用通配符这种看起来省事,但是会降低查询和应用程序的性能,一般是需要哪些字段列出来。
5、查询不同的行
有时候需要过滤重复的数据,这就需要查询不相同的行,重复的过滤掉
SELECT DISTINCT 字段名 FROM 表名
DISTINCT 关键字,指示SQL只返回字段名不同的数据。
实例:SELECT DISTINCT card_type FROM card
表中全部数据如上图所示;
使用过滤语句以后结果:SELECT DISTINCT card_type FROM card
card_type重复的不再展示。
6、限制结果
SELECT 语句查出到的数据若是匹配的有好多行,如果想返回第一行或者前几行,应该怎么样?
使用LIMIT 字句
如: SELECT * FROM 表名 LIMIT 5 返回不多余5行
SELECT * FROM card LIMIT 5
若是想指定从第几行开始到第几行结束的话,使用LIMIT 开始行,行数
如LIMIT 5,5 即为从第5行开始的5行展示。这里序号也是从0开始,第一行其实是0行
开始是19行,然后执行结果如下:
注意:1)行0,查询出来的第一行是行0不是行1
2)在行数不够时,LIMIT 查询行数不够时,能返回多少返回多少
7、查询出数据排序
排序使用 ORDER BY子句 :ORDER BY 字段名
没有ORDER BY 子句时默认不排序,如下图:
若是使用ORDER BY balance,如下图所示,默认是升序排列。
8、降序排列
上面讲过,排序是默认升序,降序的话用DESC,如ORDER BY balance DESC
9、多个字段参与排序
多个字段排序使用 ORDER BY 字段名1,字段名2,字段名3,...
实例:
SELECT * FROM card ORDER BY card_type,balance DESC;
查询结果如下:查询的结果同一类卡片的额度再按降序展示
今天就先学习到这里吧。欢迎大佬批评指正。谢谢!
万丈高楼平地起,每天进步一点点,加油!
这篇关于MySQL必会知识精华4(查询数据-SELECT)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!