数据库sql-简单查询


1. 基本用法

1.1 查询的基本语法

SELECT [ ALL | DISTINCT ] <目标列表达式> [别名] [,<目标列表达式>[别名]]FROM<表名或视图名>[别名][,<表名或视图名>[别名]]|(<SELECT>[AS]<别名>

[WHERE<条件表达式>]

[GROUP BY <列名1>[HAVING<条件表达式>]]

[ORDER BY<列名2>[ASC|DESC]];

1.2 语法格式中参数的简要说明

ALL|DISTINCT :标识在查询结果集中是否显示相同行; 

<目标列表达式>[<目标列表达式>] … :指定查询结果中要显示的目标列;

INTO <新表名>: 将查询结果插入一个新的数据表中; 

FROM<表名或视图名> [<表名或视图名>] :指定查询操作的数据源,可以是一个或多个基本表或视图,或者查询结果;

WHERE <条件表达式1>:指定限定返回行的选择条件;

GROUP BY  <列名1>:指定查询的分组条件;

HAVING <条件表达式2>:指定对分组或者聚合进行选择的条件,必须与 GROUP BY 配合使用; 

ORDER BY<列名2> [ ASC|DESC ] [, <列名3> [ ASC|DESC ]]...:指定查询结果集的排序方式;ASC升序,DESC降序,默认为ASC升序。

针对供应管理数据库SPJ,进行以下各种简单查询。

2. 查询所有供应商的信息,用中文表头显示

SELECT  Sno 供应商号码, Sname 供应商名称, STAT 类型, CITY 城市  FROM  S;  

3. 查询位于“北京”的名称包含“星”的供应商信息

SELECT  Sno 供应商号码, Sname 供应商名称, STAT 类型, CITY 城市  FROM  S  WHERE CITY='北京' AND Sname LIKE '%星%' ;  

4. 查询供应商名中最后一个字是“丰”的供应商信息

SELECT  Sno 供应商号码, Sname 供应商名称, STAT 类型, CITY 城市  FROM  S  WHERE replace(Sname,’ ‘,’’) LIKE%丰’ ;  

5. 查询零件名以“螺丝”开头的零件信息

SELECT  *  FROM  P  WHERE  Pname LIKE '螺丝%';  

6. 查询名称含有“车”的工程项目信息

SELECT  *  FROM  J  WHERE  Jname LIKE '%车%';  

7. 查询名称为“螺母”、“螺栓”、“螺丝刀”的零件信息

8. 查询“P002”号零件的总供应量

SELECT  SUM(QTY) 总供应量  FROM  SPJ  WHERE  PNO='P002';  

9. 查询“P002”号零件供应量的最大、最小和平均值

SELECT  MIN(QTY) 最小值, MAX(QTY) 最大值, AVG(QTY) 平均值  FROM  SPJ  WHERE  PNO='P002';  

10. 分组计算每个工程项目使用每种零件的供应量

SELECT  JNO, PNO, SUM(QTY) 供应量   FROM  SPJ  GROUP  BY JNO, PNO  ORDER  BY JNO, PNO;  

11. 查询供应量在300以上的供应信息

SELECT  *  FROM  SPJ  WHERE  QTY>300;  

12. 查询供应量最低的两个供应信息

SELECT  *  FROM  SPJ  ORDER  BY QTY ASC  LIMIT  0,2;  

13. 查询供应量前三名的供应商的编号

SELECT  SNO, SUM(QTY) 供应量  FROM  SPJ  GROUP  BY SNO  ORDER  BY SUM(QTY) DESC  LIMIT  0,3;  

14. 分组统计每个供应商供应每种零件的供应量

SELECT  SNO, JNO, SUM(QTY) 供应量  FROM  SPJ  GROUP  BY SNO, JNO  ORDER  BY SNO, JNO;  

文章作者: 易安
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 易安 !
评论
  目录