数据库作业-sql语句查询

这篇具有很好参考价值的文章主要介绍了数据库作业-sql语句查询。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

建表的插入数据的表数据库作业-sql建表和插入数据_快乐的xiao何的博客-CSDN博客create table supplier( supplierno char(6) primary key, suppliername nvarchar(10), address nvarchar(20), number char(11) )create table category( categoryno char(5) primary key, categoryname varchar(20), descriptions text...https://blog.csdn.net/m0_53967061/article/details/124065839

-- 1. 查询全部商品信息。
SELECT * from goods

-- 2.查询类别为“cn002”的所有商品信息。
SELECT * from goods JOIN category on goods.categoryno = category.categoryno where goods.categoryno ="cn002"
-- 3. 查询类别为“cn001”和“cn002”对应的所有商品信息。
select * from category join goods on  category.categoryno=goods.categoryno where category.categoryno like 'cn00[1-2]';
-- 4.查询类别为“cn005”且进价大于 20 的商品信息。
SELECT * from goods WHERE goods.categoryno="cn005" and goods.inprice >20
-- 5.查询库存数量小于 10 的商品号,供应商号,商品名和数量。
SELECT g.goodsno,g.goodsname,g.supplierno,g.number from goods as g where g.number <10
-- 6.查询有购买记录学生的学号。
SELECT DISTINCT s.sno  from salebill as s

-- 7.查询计算机专业“IT”学生的学号,姓名和年龄
SELECT s.sno,s.sname,2022-s.birthyear as age from student as s WHERE s.major ='IT'
-- 8.查询年龄在 22 到 24 岁学生的学号,姓名,学院,专业和年龄
SELECT s.sno,s.sname,s.college,s.major,2022-s.birthyear as age from student 
as s where 2022-s.birthyear BETWEEN 22 and 24

-- 9. 查询姓张的同学的学号,姓名,学院。
SELECT s.sno,s.sname,s.college from student as s where s.sname like "张%"
-- 10.查询库存数量在 20 以上的商品信息,并按数量的降序排列。
SELECT * from goods as g where g.number >20 order by g.number desc
-- 11.查询库存数量在 10 以内的商品编号、商品名称、类别号、数量,按类别升序库存数量降序排列结果。
SELECT g.goodsno,g.goodsname,g.categoryno,g.number from goods as g where g.number BETWEEN 6 and 13 ORDER BY g.categoryno ,g.number desc

-- 12.查询库存数量排名前三的商品信息。
SELECT  * from goods as g order by g.number DESC limit 3
-- 13. 查询类别为“cn001”库存数量最大的商品,显示商品号,商品名和数量
SELECT  * from goods as g order by g.number DESC limit 1
-- 14.查询管理信息系统专业“MIS”的学生人数。
SELECT count(*) from student as s where s.major ="MIS"
-- 15.按学院统计各个学院,年龄在 20 岁以上的学生人数。
SELECT s.college,count(*) from student as s where 2022-s.birthyear >20 GROUP BY s.college
-- 16.统计 2018 年各商品的销售总量。
SELECT g.goodsname,sum(s.number) as 销售总量 from   goods  as g join   salebill as s on 
g.goodsno = s.goodsno 
where s.happentime between '2018/01/01' and '2018/12/31' 
GROUP BY s.goodsno
-- 17.查询学生人数在 3 人以上的学院及学生人数。

SELECT s.college,count(*) from student  as s GROUP BY s.college HAVING count(s.college) >3
-- 18.查询 2019 年商品购买总数在 5 以上的学生的学号和购买总数。
SELECT student.sno,count(*) as 购买总数 from student  join salebill on student.sno=salebill.sno
where salebill.happentime between '2019/01/01' and '2019/12/31'
group by student.sno
HAVING 购买总数>5
-- 19.查询咖啡类商品的平均售价。
SELECT goods.goodsname,avg(goods.saleprice)as 平均售价 from goods join category on goods.categoryno=category.categoryno  where category.categoryname ="咖啡"
-- 20.查询与张小红同学院的学生的学号、姓名、学院。
SELECT s.sno,s.sname,s.college from student  as s  
where  s.college in  (
SELECT student.college from student where student.sname = "张小红") and s.sname!="张小红"
-- 21.查询所有商品的销售情况,包括商品号,商品名,学生姓名,销售时间,销售数量,按销售日期降序排列。

select goods.goodsno,goodsname,student.sname,happentime,salebill.number from goods 
join salebill on goods.goodsno=salebill.goodsno 
join student on salebill.sno=student.sno
order by happentime desc

-- 22.查询购买了商品的学生学号、姓名、学院。
SELECT DISTINCT s.sno,s.sname,s.college from student as s join salebill  as b on s.sno= b.sno 

--23 查询购买了咖啡类商品的学生的学号、姓名、学院
select SNO,SName,College from Student where SNO in
(select SNO from SaleBill where GoodsNO in 
(select GoodsNO from Goods where GoodsName like '%咖啡%'))

--24查询没有出售过的商品号,商品名,类别名、售价和数量。(连接查询和子查询)
select Goods.GoodsNO,GoodsName,Categoryname,Saleprice,number 
from Goods join Category on Goods.CategoryNO=Category.CategoryNO where Goods.GoodsNO not in(
select Goods.GoodsNO from Goods join SaleBill on Goods.GoodsNO=SaleBill.GoodsNO
)
--25 查询购买了商品号为“gn001”或“gn002”商品的学号,姓名和学院。
select Student.SNO,SName,college from Goods join SaleBill on Goods.GoodsNO=SaleBill.GoodsNO
join Student on Student.SNO=SaleBill.SNO
where Goods.GoodsNO like 'gn00[1-2]';
--26. 查询购买了商品号为“gn001”和“gn002”商品的学号,姓名和学院。
select SNO,SName,College from Student where SNO in
(select SNO from SaleBill where GoodsNO='GN001')
and Student.SNO in(select SNO from SaleBill where GoodsNO='GN002')
--27. 查询各学院年龄最大的学生,显示学号,姓名和学院。(相关子查询和派生表)
select SNO,SName,College from Student s 
where (YEAR(getdate())-YEAR(birthyear))=(select MAX(YEAR(getdate())-YEAR(birthyear)) 
from student where s.college = student.college)

--28. 统计每个商品的销售总数,要求显示商品号,商品名和销售总数。

select Goods.GoodsNO,GoodsName,sum(SaleBill.Number) as 销售总数 from Goods,SaleBill 
where Goods.GoodsNO = SaleBill.GoodsNO group by Goods.GoodsNO,GoodsName

--29.查询 2019 年商品购买总数在 5 以上的学生的姓名、学院和购买总数。
select SName,College,SaleBill.number
from Goods join SaleBill on Goods.GoodsNO=SaleBill.GoodsNO
join Student on SaleBill.SNO=Student.SNO
where (Happentime between '2019/01/01' and '2022/12/31') and SaleBill.number>5
group by SName,College,SaleBill.number;
--30. 找出供应商品总数在 50 以上的供应商号,供应商名,供应商地址,供应总数,
--结果按地址分组,并按供应总数的降序排列
select supplier.suppliername,Address,sum(goods.number) from
goods join supplier on goods.supplierno=supplier.supplierno
group by Address,suppliername
having sum(goods.Number)>50
order by sum(goods.number) desc;文章来源地址https://www.toymoban.com/news/detail-423011.html

到了这里,关于数据库作业-sql语句查询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通过sql语句查询出某个字段在数据库中的某个表

    新入职的小伙伴,肯定还没熟悉数据库中表于表的关系以及表中的字段的含义是什么,就需要进行需求开发,导致会出现对某个字段在哪张表里面都分辨不清,不过不要怕,可以利用已下sql语句快速找到。(要注意的是,此方法可能不适用于所有类型的数据库系统,但对于大

    2024年02月16日
    浏览(74)
  • MySQL数据库增删改查及聚合查询SQL语句学习汇总

    目录 数据库增删改查SQL语句 MySQL数据库指令 1.查询数据库 2.创建数据库 3.删除数据库 4.选择数据库 创建表table   查看所有表 创建表 查看指定表的结构 删除表 数据库命令进行注释 增删改查(CRUD)详细说明 增加 SQL库提供了关于时间的函数:now()  查询 查询表作列与列之间进

    2024年02月09日
    浏览(85)
  • python-Excel数据模型文档转为MySQL数据库建表语句(需要连接数据库)-工作小记

    将指定Excel文档转为create table 建表语句。该脚本适用于单一且简单的建表语句 呈现效果  代码   仅作为笔记记录,如有问题请各位大佬来指导 

    2024年02月14日
    浏览(50)
  • .NET 数据库大数据操作方案(插入、更新、删除、查询 、插入或更新)

    海量数据操作ORM性能瓶颈在实体转换上面,并且不能使用常规的Sql去实现 当列越多转换越慢,SqlSugar将转换性能做到极致,并且采用数据库最佳API 操作数据库达到极限性能,当然你如果不用sqlsugar了解一下原理也可以使用其他ORM实现   BulkCopy是一种用于高效批量插入大量数据

    2024年02月08日
    浏览(46)
  • MySQL数据库查询语句之组函数,子查询语句

    以组为操作单位,一组数据得到一个结果。 在没有手动分组的前提下,整张表默认为一组数据 max(列名):获取最大值 min(列名):获取最小值 sum(列名):获取总和 avg(列名):获取平均值 count(列名):统计值的个数 所有组函数都会自动忽略null值 在某些情况下,我们需要根据需要

    2024年01月23日
    浏览(59)
  • 数据库多表查询作业

    创建数据库 插入数据 1.查询student表的所有记录 2.查询student表的第2条到4条记录 3.从student表查询所有学生的学号(id)、姓名 (name)和院系(department)的信息 4.从student表中查询计算机系和英语系的学生的信息 5.从student表中查询年龄18~22岁的学生信息 6.从student表中查询每个院

    2024年02月16日
    浏览(47)
  • 数据库作业——select查询操作

    创建数据库 插入数据 1、显示所有职工的基本信息。 2、查询所有职工所属部门的部门号,不显示重复的部门号。 3、求出所有职工的人数。 4、列出最高工和最低工资。 5、列出职工的平均工资和总工资。 6、创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。

    2024年02月13日
    浏览(51)
  • MySQL数据库高级查询语句

    基于这两个数据库表格来实现以下实验 concat(x,y)将提供的参数x和y拼接成一个字符串 trim()返回去除指定格式的值 GROUP BY 有一个原则,凡是在 GROUP BY 后面出现的字段,必须在 SELECT 后面出现; 凡是在 SELECT 后面出现的、且未在聚合函数中出现的字段,必须出现在 GROUP BY 后

    2024年02月11日
    浏览(70)
  • MySQL数据库——高级查询语句

    数据库是用来存储数据,更新,查询数据的工具,而查询数据是一个数据库最为核心的功能,数据库是用来承载信息,而信息是用来分析和查看的。所以掌握更为精细化的查询方式是很有必要的。本文将围绕数据的高级查询语句展开。 1.指定指字段进行查询——SELECT 语法:

    2024年02月11日
    浏览(94)
  • 数据库 实验四 select查询语句

    实验四 一、实验目的 (1) 掌握SELECT语句在多表查询中的应用。 (2) 掌握多表连接的几种连接方式及应用。 二、实验要求 1、学生提前准备好实验报告,预习并熟悉实验步骤; 2、遵守实验室纪律,在规定的时间内完成要求的内容; 3、1~2人为1小组,实验过程中独立操作、相互学

    2023年04月20日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包