第四章 数据库——数据查询Ⅰ

本文详细介绍了SQL查询语句的使用,包括SELECT语句的基本语法,如TOP子句、别名、查询条件等。通过实例展示了如何进行简单查询、WHERE条件查询、模糊查询、范围查询、NULL查询和子查询。还探讨了分页查询、函数应用,如字符串、日期和数学函数,以及聚合函数COUNT、AVG、MAX等。最后,讲解了GROUP BY子句的使用,结合HAVING子句进行分组筛选,并给出多个实际案例。
摘要由CSDN通过智能技术生成

 

一.select 语句

select [top子句] <列名1 as 别名1,列名2 as 别名2....>

From <表名>

[where<查询条件表达式>]

[order  by <排序的列名>[asc或desc]

1.top 子句用来指定需要显示的行数,可直接跟数字,也可以指定比例。

select top 10 <列名> from <表名>        --显示前行

select top 10 percent<列名> from <表名>  --显示总行数的10%

2.as为查询的列取别名,不改变原表中的列名,只在显示查询结果时显示别名。

3.如果缺省where子句,则表示查询所有记录,

4.查询所有列,可以在列名处使用“*” ,查询多列时,使用分隔各列

5.如果不写ascdesc,则默认排序为按指定列名升序排列。

     asc为升序,desc为降序。

二.简单查询 

   使用astore数据库

/******

查询所有的商品类别

*********/

select * from kind

select kindID, kindName,remark from kind

/***************************

使用列别名,表别名, 使用as

****************************/

select kindID as 类别编号, kindName as 类别名称,remark as 备注from kind as k

/*************************

使用列别名,表别名 省略as

*************************/

select kindID 类别编号, kindName 类别名称,remark 备注from kind k

/******

使用=重新命名

*********/

select 类别编号=k.kindID, 类别名称=k.kindName,备注=k.remark from kind  k

/******

查询每种商品的销售额

select 中如果对列进行了计算,需要进行重新命名

*********/

select p.productName 商品名称,p.price*p.orders 销售额from product p

/******

查看每种商品的价格,按照价格进行降序排列

order by 排序的字段排序类型[asc/desc]  asc升序desc降序默认为升序

*********/

select p.productName,p.price from product p order by p.price desc

/******

查询最贵的10种商品

先按照价格进行降序排列,然后取前10

*********/

select top 10 p.productName,p.price from product p order by p.price desc

/******

查询50的商品的价格,按照价格高低排序

*********/

select top 50 percent p.productName,p.price from product p order by p.price desc

.where条件查询

1.单条件查询

2.多条件查询

/***********************************

查询正在销售的,库存少于10的商品,并按照价格高低显示

order by 应该位于where条件后面,意味着先选出符合要求的行,然后再进行排序

************************************/

select productName,price

from product

where stop=and instore<10

order by price desc

/***********************************

查询正在销售的,库存少于10的商品,并按照销售额排序

***********************************/

select productName,price,price*orders 销售额

from product

where stop=and instore<10

order by 销售额desc

或者

select productName,price,price*orders 销售额

from 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值