page contents

SQL数据库使用教程:MySQL基础教程--查询数据

本文介绍MySQL 数据库沿用SQL的SELECT语句来查询数据。

attachments-2021-04-srUjjipY606ebbb0ec189.png

本文介绍MySQL 数据库沿用SQL的SELECT语句来查询数据。相关详细内容咨询前往:SQL数据库使用教程,更多精彩内容等你咨询。
语法

SELECT column_name1,column_name2 FROM table_name [WHERE clause][LIMIT N][ OFFSET M]


示例数据我们以Customers表为例,来讲解MySQL中的数据查询功能。attachments-2021-04-TB3YI9bK606eb95be276a.png

查询单列即只显示某一列数据,我们以查询Customers表中的姓名为例,可以这样写SQL代码:


SELECT `姓名` FROM customers


结果为:
attachments-2021-04-vF8GFsLQ606eb976cb94a.png

查询多列与查询单列的写法类似,不同的是必须在SELECT后面给出多个列名,列名用逗号(,)隔开,例如我们要查询Customers表中客户的姓名和地址,可以这样写:


SELECT `姓名`,`地址` FROM customers


结果为:
attachments-2021-04-1D9ytDz0606eb98d599bd.png

查询所有列除了指定列名以为,SELECT查询语句还可以查询表的所有列名而不必一一列出来,在SELECT后面使用通配符星号(*)来达到该作用。例如我们想查看Customers表里的所有数据,可以这样写:


SELECT * FROM customers;

结果为:
attachments-2021-04-k1GXe1fC606eb9aedbe86.png
其实就是我们上面的示例数据的结果。
查询结果去重当我们查询Customers中的城市列时,发现返回的结果中广州和北京都重复了。要在查询结果中去掉重复行,我们可以使用关键字:DISTINCT来去重。如下:


SELECT DISTINCT 城市 FROM customers;


结果为:
attachments-2021-04-G0ZLAiwq606eb9d0c9be8.png
注意:DISTINCT不能部分去重,当它后面有多列时,只有当这些列都重复时DISTINCT才会去掉重复的,例如:


SELECT DISTINCT 城市,邮编 FROM customers;

因为城市和邮编都是一一对应的,这里使用DISTINCT可以去掉重复的数据,结果为:
attachments-2021-04-sZl4hKOY606eb9e65d6a9.png

但是如果查询customers表中的客户ID和城市时,使用DISTINCT,则不会对城市单独去重了,因为客户ID没有对应的重复值


SELECT DISTINCT 客户ID,城市 FROM customers;

结果为:
attachments-2021-04-fTtNQCFs606eb9f92b8d0.png
返回指定行数如果一张表的数据行非常多,但是我们又不想完成显示所有记录行,这时候可以使用LIMIT关键字来返回指定的行数,例如:返回customers表中的前3行


SELECT * FROM customers LIMIT 3;


结果为:attachments-2021-04-I5R2EcBq606eba12290b9.png

如果要得到第4-6行(即下3行)要怎么操作呢?这时我们可以使用LIMIT的第二个参数来实现,例如:


SELECT * FROM customers LIMIT 3,3;

结果为:attachments-2021-04-dVbNxnoJ606eba1f3f278.png
其中第一个3表示起始行的下标,第二个3表示返回的行数。
注意:当LIMIT使用两个参数时,第一个参数的起始下标为0开始而不是1,所以上面的第一个3实际上是第4行开始,务必记住!
查询带表名的列当我们之后讲到关联查询时,如果两个表里面有相同的列名时,为了区分,我们会在列名前面添加表名来区别,例如:

SELECT customers.`客户ID`,orders.`客户ID` 
FROM customers,orders
where customers.`客户ID`=orders.`客户ID`


结果为:

attachments-2021-04-dO4sp0iA606eba2f81a89.png
其中的关联查询我们后面章节会讲述,此处只是为了告诉大家区别列名的用法。想了解更多相关内容欢迎前往:六星社区

如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。

attachments-2022-06-IcfuXydv62abe47e860c4.jpeg

  • 发表于 2021-04-08 16:18
  • 阅读 ( 783 )
  • 分类:数据库

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1474 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章