川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > IT资讯

MySQL:数据查询语言DQL,查询语法及实例

作者:川石学院 日期:2022-04-13 11:09:42 点击数:

一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就接着来谈谈关于软件测试中的“数据查询语言DQL,查询语法及实例”。

MySQL:数据库安装,基本配置及客户端工具使用(图1)

  SQL(Structured Query Language)的含义是结构化查询语言.SQL 是用于访问和处理数据库的标准的计算机语言。

  SQL有多种不同的标准,常见有SQL89,SQL92与SQL99标准.

  ▲ SQL分类

MySQL:数据查询语言DQL,查询语法及实例(图2)

  (一)DQL

  数据查询语言.

  从数据库表中检索数据.

  select命令

  select语句

  •   自然语句: 句子成分 主谓宾 定状补

  •   select语句: 由若干个子句构成,每一个子句由一个关键字引导

  1、select语句组成

  一般select语句包含6大子句.

MySQL:数据查询语言DQL,查询语法及实例(图3)

  语法:

  select list

  from tabs

  where search_condition

  group by grouping_columns

  having search_condition

  order by sort_columns;

  

  #执行顺序

  from(join) --> where --> group by --> having --> select --> order by

  2、简单查询

  语法:

  select list

  from tab_name

  order by sort_columns;

  ▲ 查看表结构

  语法:

  desc tab_name #DESCRIBE

  describe tab_name


  mysql> desc ecs_goods_type;

  +----------+--------------------+----+---+-------+--------------+

  | Field | Type |Null|Key|Default| Extra |

  +----------+--------------------+----+---+-------+--------------+

  | cat_id |smallint(5) unsigned| NO |PRI| NULL |auto_increment|

  | cat_name |varchar(60) | NO | | | |

  | enabled |tinyint(1) unsigned | NO | | 1 | |

  |attr_group|varchar(255) | NO | | | |

  +----------+--------------------+----+---+-------+--------------+

  4 rows in set (0.03 sec)

  ▲ MySQL数据类型

MySQL:数据查询语言DQL,查询语法及实例(图4)

  #列出所有品牌信息(查询需求)

  #思路

  1.确定表

  可以查看数据的设计文档(数据字典);问开发,问DBA

  ecs_brand

  2.确定列

  可以通过查看表结构来熟悉表.

 

  SELECT brand_name FROM ecs_brand; #查询单列

  SELECT brand_id,brand_name FROM ecs_brand; #查询多列

  SELECT * FROM ecs_brand; #查询所有列

  ▲ 书写SQL语句注意事项

  •   不区分大小写

  •   关键字与[非]关键字之间用空格或换行符分隔

  •   多个列之间用,分隔

  •   *代表所有的列

  •   ;表示SQL语句结束

  •   注释使用 # 单行注释 /*内容*/ 多行注释

  •   单独选中命令执行

  ▲ 怎样去掉重复的记录或行

  语法:

  select distinct list from tab_name ...

  

  #找出商品表中有哪些商品类型

  SELECT * FROM ecs_goods;

  SELECT DISTINCT goods_type FROM ecs_goods;

  ▲ 排序

  是由order by子句来实现的.

  排序方式:

  ● 按列名

  select ...,col_name,...

  from tab_name

  order by col_name;

  

  #按照商品市场价格排序

  SELECT goods_id,goods_type,goods_name,market_price

  FROM ecs_goods

  ORDER BY market_price;

  ● 列序号

  select c1,c2,...,cn

  # 1 2 ... n

  from tab_name

  order by i;

  

  #按照商品名称排序

  SELECT goods_id,goods_type,goods_name,market_price

  FROM ecs_goods

  ORDER BY 3;

  ● 列别名

  select ...,col_name alias_name,...

  from tab_name;

  select ...,col_name as alias_name,...

  from tab_name;

  

  SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格

  FROM ecs_goods

  ORDER BY 商品编号;

  ● 按列别名

  select ...,col_name alias_name,...

  from tab_name

  order by alias_name;

  

  #安装商品编号别名排序

  SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格

  FROM ecs_goods

  ORDER BY 商品编号;

  ● 升序与降序

  select list

  from tab_name

  order by col_name [asc] #默认升序 asc可选

  order by col_name desc #降序排序 desc必选

  

  #按照商品市场价格降序排序

  SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格

  FROM ecs_goods

  ORDER BY market_price DESC;

  ● 多列排序

  select list

  from tab_name

  order by c1,c2,...,cn;

  

  #按照商品类型升序,市场价格降序排序

  SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格

  FROM ecs_goods

  ORDER BY goods_type,market_price DESC;


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2022-04-13 11:09:42
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2022-04-13 11:09:42
  • 国外的月亮也不一定比国内测试猿的年薪美~2022-04-13 11:09:42
  • 建筑工程专业朱同学成功转行为软件测试人!2022-04-13 11:09:42
  • 财务管理专业转行软件测试月薪甩会计几条街!2022-04-13 11:09:42
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2022-04-13 11:09:42
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2022-04-13 11:09:42
  • 文科生转行软件测试照样拿下高薪15K!2022-04-13 11:09:42
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2022-04-13 11:09:42
  • 毕业1年,迷茫的他最终选择转行软件测试2022-04-13 11:09:42