SQL查询语句练习

--在示例数据库Northwind中,执行数据查询,要求如下:
use Northwind
go
--1、在”Suppliers”表中查询,得到不同的地区有多少家供应商的信息;
select sum( SupplierID) 总数,Country 国家 from dbo.Suppliers
group by Country
--2、在”Suppliers”表中查询,显示哪些供应商有传真;
select CompanyName 供应商 from dbo.Suppliers
where Fax is not null
--3、在“Products”表中查询,查询不同产品所订购的总价;
select sum(UnitPrice)总价 ,ProductName 产品 from dbo.Products
group  by ProductID,ProductName
--4、在”Orders”表中查询,查询运货费排名前十位的所有信息;
select top 10 * from dbo.Orders
order by Freight desc
====================================================================
--在示例数据库Pubs中执行数据查询,要求如下:
use pubs
go
--1、查询Titles表,返回所有royalty列非空的数据行;
select * from dbo.titles
where royalty is not null
--2、查询Titles表,返回advance列值大于7000的行数;
select count(advance) 行数  from dbo.titles
where advance>7000
--3、查询Titles表,按照type列进行分组,
--显示每一组中type值、Price的平均值;
select type,avg(Price) Price平均值 from dbo.titles
group by type
--4、查询TitleAuthor表中,按照Title_ID进行分组查询,
--并显示每一组中royaltyper的最大值,
--查询限制条件的要求是:au_id的值必须不以”8”开头,但必须包含字符”8”;
select  max(royaltyper)最大值,Title_ID from dbo.titleauthor
group by Title_ID
having Title_ID like '%8%'
--5、查询Sales表,要求返回ord_date在1993年到1994年之间,
--查询结果按照title_id降序的方式进行显示;
select * from Sales
where ord_date between '1993-1-1' and '1994-1-1'
order by title_id desc
--6、查询Sales表,只返回40%的行;
select top 40 percent * from dbo.sales
--7、编写一个查询,找出现有图书的各个类别(不能有重复值)
select distinct type from dbo.titles
--8、编写一个查询,显示各个作者的版权费(royaltyper)的总和
select sum(royaltyper) 版权费,au_id 编号 from dbo.titleauthor
group by au_id
--9、编写一个查询,显示sales表中各个Title的数量的平均值


     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL(Structured Query Language)是一种用于管理关系型数据库的标准语言,通过它可以执行各种查询、数据插入、更新和删除等操作。进行SQL查询语句练习有助于提高对数据库操作的理解和效率。以下是一些基本的SQL查询语句及其用途: 1. **SELECT**:用于从数据库表中检索数据,是SQL中最常用的语句。例如,`SELECT * FROM table_name`会选择所有列,`SELECT column1, column2 FROM table_name`则选择特定列。 2. **WHERE**:用于筛选满足特定条件的行。如 `SELECT * FROM table_name WHERE condition`,`condition`可以是字段值等于、不等于、大于、小于等。 3. **ORDER BY**:按指定列排序结果,例如 `SELECT * FROM table_name ORDER BY column_name ASC/DESC`。 4. **GROUP BY**:将数据按照某个列分组,常与聚合函数(如COUNT(), SUM(), AVG()等)一起使用。 5. **JOIN**:用于合并两个或更多表的数据,有 INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN 等不同类型。 6. **LIMIT/TOP**:限制返回结果的数量,例如 `SELECT * FROM table_name LIMIT 10`。 7. **INSERT INTO**:用于向表中添加新记录。 8. **UPDATE**:更新表中的现有记录。 9. **DELETE FROM**:删除表中的记录。 10. **CREATE TABLE** 和 **ALTER TABLE**:用于创建和修改数据库表结构。 在练习SQL查询时,可以从以下几个方面入手: 1. 学习基础语法和概念。 2. 挑选一些实际场景,比如查找特定信息、统计数据、合并数据等,编写相应的查询。 3. 尝试使用SQL工具(如MySQL Workbench、phpMyAdmin、SQL Server Management Studio等)进行实践。 4. 解决实际项目中的数据查询需求,提升问题解决能力。 如果你需要进一步深入学习或遇到具体问题,可以告诉我,我会提供更详细的解释和相关问题供你探索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值