首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SQL 必知必会 50 题(36 - 40)

SQL36 从 Products 表中检索所有的产品名称以及对应的销售总数 描述 Products 表中检索所有的产品名称:prod_name、产品 id:prod_id prod_id prod_name...)和Orders 表中的相关订单号(order_num),并按顾客名称再按订单号对结果进行升序排序。...(cust_name)和Orders 表中的相关订单号(order_num),添加第三列 OrderTotal,其中包含每个订单的总价,并按顾客名称再按订单号对结果进行升序排序。...购买了 prod_id 为 “BR01” 的产品,然后从 Orders 表中返回每个产品对应的顾客 ID(cust_id)和订单日期(order_date),按订购日期对结果进行升序排序。...order_num 相同的列,然后根据筛选出的结果列中的 cust_id 从 Customers 表中找对应的顾客信息即可。

42340
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    用SQL语句进行数据库查询(简单查询)

    使用聚合函数 count函数 使用Group子句进行查询 简单查询 上一篇我们介绍了如何用SQL语句创建表、修改表以及向表中插入数据.现在我们可以通过SQL语句对表中的数据按照自己的需求来进行查询....查询单个字段 –从课程表中查询出高数 与c语言程序设计的所有信息....>[查询条件] 例如:从选课表中检索出前3个课程的信息....Select Top 3 * From Course 2)返回结果集中指定百分比的记录数 语法格式:SELECT TOP n PERCENTFROM表名>[查询条件] 例如:从课表中检索出前...结果2: 用例: 查询全体学生的姓名及其年龄 我们的表中并没有年龄这一属性,但是我们有学生的出生日期,这样我们可以通过计算(当前日期-出生日期)得到年龄. select Sname as 姓名 ,

    2.7K20

    《Oracle Concept》第三章 - 9

    默认情况下,字符类型会按照值中每个字节的二进制进行排序,数值类型会按照从小到大的顺序进行排序,日期会按照从远到进的顺序进行排列。 升序索引的示例,如下所示, ?...Oracle按照department_id列的顺序存储hr.employees表的数据。他会读取department_id这个升序索引,相应的rowid值会从0开始递增。...降序索引的默认扫描是从最大值到最小值。当检索条件中一些列按照升序,另一些列按照降序的时候,降序索引是很有用的。例如,假设要创建一个last_name和department_id的复合索引, ?...如果用户按照升序检索hr.employees的last_name(A到Z),并按降序检索department IDs(高到低),数据库就能用这个索引来检索数据,避免排序带来的额外消耗。...《Oracle Database SQL Language Reference》描述了CREATE INDEX的ASC和DESC选项。

    39230

    数据库语句练习

    (31)在Visual FoxPro中,以下有关SQL的SELECT语句的叙述中,错误的是______。...A.SELECT子句中可以包含表中的列和表达式 B.SELECT子句中可以使用别名 C.SELECT子句规定了结果集中的列顺序 D.SELECT子句中列的顺序应该与表中列的顺序一致 (32)下列关于...SQL中HAVING子句的描述,错误的是______。...S(学号,姓名,性别,出生日期,院系)   课程表:C(课程号,课程名,学时)   选课成绩表:SC(学号,课程号,成绩)   在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型...语言检索选修课程在5门以上(含5门)的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是______。

    94330

    想学数据分析但不会Python,过来看看SQL吧(下)~

    子查询与临时表格 我们之前所涉及到的都是从数据库中检索数据的单条语句,但当我们想要检索的数据并不能直接从数据库表中获取,而是需要从筛选后的表格中再度去查询时,就要用到子查询和临时表格了。...在关系数据库中,将数据分解为多个表能更有效地存储,更方便地处理,但这些数据储存在多个表中,怎样用一条SELECT语句就检索出数据呢?那就要使用链接。...: 只要其中一个表中存在匹配,就返回数据,结果是两表的并集。...而且UNION返回的结果只会选取列中不同的值(即唯一值)。 使用UNION的场合情况: 在一个查询中从不同的表返回结果; 对一个表执行多个查询返回结果。 示例: 如下三个语句的结果是一致的。...customer_state IN ('str1','str2') OR customer_state = 'str3'; 虽然这里看起来使用UNION比WHERE更复杂,但对于较复杂的筛选条件,或者从多个表中检索数据时

    3.1K30

    如何使用DNS和SQLi从数据库中获取数据样本

    在下面的示例中,红框中的查询语句将会为我们从Northwind数据库中返回表名。 ? 在该查询中你应该已经注意到了有2个SELECT语句。...内部SELECT语句(在上面截图中调用的)返回Northwind数据库中表名的前10个结果,并按升序字母顺序排序。然后,外部(第一个)SELECT语句选择按字母顺序降序排序的结果集的第一个结果。...此查询的结果是我们检索Northwind数据库中第10个表的名称。你是不是感到有些疑惑?让我们来分解下。 以下内部的SELECT语句,它将返回10个结果并按升序字母顺序排序。 ?...如下所示,完整的查询只返回第10个表的名称。这是因为我们首先返回了10个结果,并按升序字母顺序排序,然后我们又执行了第二个SELECT,其中只返回按降序字母顺序排序的第一个结果。...这样一来查询结果将只会为我们返回表名列表中的第10个结果。 ? 知道了这一点后,我们就可以使用Intruder迭代所有可能的表名,只需修改第二个SELECT语句并增加每个请求中的结果数即可。 ?

    11.5K10

    测试工程师SQL面试题

    6、创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。 7、显示所有女职工的年龄 8、列出所有姓刘的职工的职工号、姓名和出生日期。...13、将职工表worker中的职工按出生的先后顺序排序。 14、求出各部门党员的人数。 多表查询: 1、列出每名职工的职工号、姓名和部门名。 2、列出市场部的所有女职工的姓名和政治面貌。...from employees e 1、从student表查询所有学生的学号(id)、姓名(name)和院系(department)的信息 SELECT id,name,department FROM...名为工作日期表 Create table emp2 (select e.empID,e.empName,e.firJob from employees e); 在其他数据库中,可以尝试使用: select...中的职工按出生的先后顺序排序 select * from employees e order by e.birth asc 14、求出各部门党员的人数 select e.deptID,count(1)

    5.3K31

    图解面试题:你有多久没涨过工资了?

    当前薪水是“薪水表“中的“结束日期”=2004-01-01,这一行对应的薪水。 入职薪水是“雇员表“中的“雇用日期”=“薪水表“中的“起始日期”,这一行对应的薪水。 【解题步骤】 1....当前薪水 当前薪水是“薪水表“中的“结束日期”=2004-01-01。从“薪水表“给的案例数据可以看出,“雇员编号”(10002)有两条薪水记录,说明他经历过一次涨薪。...这涉及到两个表,因此需要用到多表联结,拿出《猴子 从零学会SQL》里面的多表联结图。 使用哪种联结呢?...的查询结果当做临时表n。...select m.雇员编号,当前薪水-入职薪水 as 薪水涨幅from mleft join non m.雇员编号 = n.雇员编号; 4.按薪水涨幅进行升序 使用order by子句对查询结果排序

    64700

    MySQL 系列教程之(七)DQL:从 select 开始丨【绽放吧!数据库】

    从SELECT开始 检索单个列 select name from user 如果没有明确排序查询结果(下一章介绍),则返回的数据的顺序没有特殊意义。...检索所有列 select * from user 使用通配符 一般,除非你确实需要表中的每个列,否则最好别使用*通配符。...,可以使用DESC设置降序排列 select * from user order by classid,age DESC 以上语句就是先对classid进行升序排序,然后在结果中对age进行降序排序...> >如果仅在SQL查询工具中查看一下结果,这样没有什么不好。 > >但是,一个未命名的列不能用于客户机应用中,因为客户机没有办法引用它。 > >为了解决这个问题,SQL支持列别名。...> > 虽然SELECT通常用来从表中检索数据,但可以省略FROM子句以便简单地访问和处理表达式。

    3.6K43

    MySQL之数据库基本查询语句

    distinct author from Article; 限制查询结果(limit分页) #查询Article表前3行的文章类型 select type from Article limit 1,3...select aid,author,type from Article order by aid; 对多个查询列进行排序(order by a,b:a排序的基础上,b再排序): #Article表按aid...查询姓名中有*的学生信息 select * from Article where type regexp '\\*'; SELECT 使用函数处理数据 concat()函数拼接 #将类型和对应的qq群连接起来,并按类型排序...FROM:要检索的数据表 WHERE:行级过滤 ... GROUP BY:分组说明 HAVING:组级过滤 ... ORDER BY:输出时排序 ... LIMIT:要检索的行数 ......附:Author表 ? Article表 ? ArticleDetail表 ? 最后是今天的分享:Author、Article、ArticleDetail三张表一键建表SQL语句

    4.8K40

    图解面试题:累计求和问题如何分析?

    ​【题目】 “薪水表”中记录了员工发放的薪水。包含雇员编号,薪水、起始日期、结束日期。 其中,薪水是指该雇员在起始日期到结束日期这段时间内的薪水。...(1)方法1,用窗口函数(推荐) 在《猴子 从零学会SQL》里讲过窗口函数的基本语法如下: over (partition by                 ...薪水表中只有一列雇员编号和一列薪水,因此我们需要复制一张薪水表并与原来的合并,需要用到自联结,语法如下: select 列名 from 表名 as 别名1,表名 as 别名2; select *from...> order by 排序的列名>) as 累计值的别名from 表名; 【举一反三】 下表为确诊人数表,包含日期和该日期对应的新增确诊人数 按照日期进行升序排列...参考答案: select 日期,确诊人数,sum(确诊人数) over (order by 日期) as 累计确诊人数from 确诊人数表; 查询结果 如何从零学会sql?

    1.1K20

    短视频平台常见SQL面试题,你学会了吗?

    而使用窗口函数的话不会减少原表中的行数。...按用户id分组(partiotion by 用户id)、并按最点赞数、视频id降序排列(order by点赞数,视频id ),降序排列desc用套入窗口函数的语法,得出下面的SQL语句: select...SQL写法如下: select 用户id ,sum(if (发布日期 ="2022/6/2",用户累计粉丝数,-用户累计粉丝数)) as "涨粉数" from 用户视频信息明细表 where 发布日期...=b.进入的直播间id; 查询结果: 从查询结果可以很明显看到R004这个直播间是没有观众进入的,我们可以用观众id是否为空来判断直播间有无观众的情况 (观众id is null),R005这个直播间观众是三分钟后再进入直播间的...date_add函数用法如下: SQL写法如下: b.进入时间 > date_add(a.开播时间,interval +3 minute) 代入整个SQL中 select a.主播id, a.直播间

    77130

    SQL 基础(四)单关系数据查询

    3.确定范围(全匹配) 4.确定集合(全匹配) 5.模糊查询(部分匹配) 6.空值查询 统计汇总查询 分组查询 排序查询结果 单关系(表)数据查询结构 查询结果仍为表,WHERE、SELECT 分别相当于关系代数中的...-- 指定数据库 SELECT sno,sn,birthday -- 查询信息指定 FROM tb_student -- 指定表 计算成绩表中学生年龄,并用学号、姓名、年龄做表头 方法:当前日期减去生日日期求得年龄...ORDER BY 查询排序结果,位置必须在其他子句后,指定缺省默认为 升序 ASC [DESC 降序 / ASC 升序] 降序 descending order 升序 ascending order...NULL 在排序时认为是最小值 查询成绩表中,选修 c10 课程的学生学号,并按成绩降序排列 select sno,score from tb_score where (cno='c10') order...by score DESC 成绩表中,查询选修 c10,c03,c09 或 c20 课程的学号和成绩,结果按学号升序排列 select sno,cno,score from tb_score where

    1.2K30

    走向面试之数据库基础:一、你必知必会的SQL语句练习-Part 2

    (7)查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出 1 select r.CNO 2 from BORROW r,BOOKS b 3 where r.BNO...10)如果经常按书名查询图书信息,请建立合适的索引 1 create index index_books_bname on BOOKS(BNAME) PS:关于索引,你必须了解的东东 ①索引就是加快检索表中数据的方法...通过定义从基表中搜集数据,并展现给用户; (2)视图的优点:①能分割数据,简化用户观点。...  (13)查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出 1 select b.CNO 2 from BORROW b 3 where b.BNO in...),可变长,最大50个字符 alter table CARDS add DEPTNAME nvarchar(50) 二、练习总结 本篇是从Cat Qi的原文《SQL面试题(学生表-教师表-课程表-选课表

    57010

    SparkSQL练习题-开窗函数计算用户月访问次数

    mysql的表中,自己设计对应的表结构 实现代码 采用spark local模式,基于scala语言编写 import org.apache.spark.sql....result.show(false) } } t2表打印内容 我的思路是首先将日期截取拼接为yyyy-mm的格式; 使用sum(访问量)开窗,根据用户ID分区,按照月份排序,得出每月的累加...再用max最大值对累加结果开窗,根据用户ID分区,按照日期和用户ID排序,因为有重复的日期,所以需要两个限制条件,这一步计算出了用户每个月的最大访问量,但是未分区排序去重; +------+----...ORDER BY userID, date 语句的作用是对分组后的结果集进行排序。它按照 userID 和 date 的升序对结果进行排序,使得相同 userID 的行按照 date 的顺序排列。...这样做的功能是确保结果集中的行按照 userID 和 date 的顺序进行排列,使得相同用户的不同日期的记录按照日期的先后顺序呈现,方便查看和分析数据。

    6910

    软件开发入门教程网之MySQL 排序

    MySQL 排序 我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据。...如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪种方式来进行排序,再返回搜索结果。...[ASC [DESC][默认 ASC]] 你可以使用任何字段来作为排序的条件,从而返回排序后的查询结果。 你可以设定多个字段来排序。...---- 在命令提示符中使用 ORDER BY 子句 以下将在 SQL SELECT 语句中使用 ORDER BY 子句来读取MySQL 数据表 kxdang_tbl 中的数据: 实例 尝试以下实例,结果将按升序及降序排列...---------+---------------+---------------+-----------------+ 4 rows in set (0.01 sec) 读取 kxdang_tbl 表中所有数据并按

    81010

    我为NET狂官方面试题-数据库篇

    求结果:select "1"? 查找包含"objs"的表?查找包含"o"的数据库? 求今天距离2002年有多少年,多少天?...UserId(自增长id) 请求出每个班级的数学平均分,并按照高低进行排序 一个TestDB表有A,B两个字段。...(最好用两种方法) 表中有A,B,C三列,用SQL实现:当A列>B列选择A,否则选择B,当B列>C列选择B,否则选择C 数据行列互换 转换前: 转换后: 请统计每个URL访问次数,并按访问次数由高到低的顺序排序...用户注册表中id是自增长的,①请查询出一天24h每小时注册的人数②请查询第4条记录③请查询ID重复次数大于2次的记录 图书表(图书号,图书名,作者编号,出版社,出版日期)作者表(作者编号,作者姓名,年龄...数据库TestStudent中学生表用到了TestMain中的Class表,请查询一下TestStudent中的学生在哪个班级?

    80490
    领券