按不在选择中的字段进行分组

2023-11-27

我想知道讲师在特定年份教授了多少个模块,并希望选择讲师的姓名以及该讲师的模块数量。

问题是因为我正在选择Name,我必须按名称对其进行分组才能使其正常工作。但如果有两个同名讲师怎么办?然后 sql 会将它们合一,这将是错误的输出。

所以我真正想做的是选择name但分组依据id,sql 不允许我这样做。有办法解决吗?

下面是表格:

Lecturer(lecturerID, lecturerName)
Teaches(lecturerID, moduleID, year)

到目前为止,这是我的查询:

SELECT l.lecturerName, COUNT(moduleID) AS NumOfModules
FROM Lecturer l , Teaches t
WHERE l.lecturerID = t.lecturerID
AND year = 2011
GROUP BY l.lecturerName --I want lectureID here, but it doesn't run if I do that

SELECT a.lecturerName, b.NumOfModules
FROM Lecturer a,(
SELECT l.lecturerID, COUNT(moduleID) AS NumOfModules
    FROM Lecturer l , Teaches t
    WHERE l.lecturerID = t.lecturerID
    AND year = 2011
    GROUP BY l.lecturerID) b
WHERE a.lecturerID = b.lecturerID
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按不在选择中的字段进行分组 的相关文章

  • Template_searchpath 在 Airflow 中给出 TemplateNotFound 错误并且找不到 SQL 脚本

    我有一个这样描述的 DAG tmpl search path home airflow gcs sql requests with DAG dag id pipeline default args default args template
  • 触发器定义中的 DELETE 语句问题

    我创建了一个插入 更新触发器 旨在根据插入的数据更新不同表中的信息 触发器执行 或应该执行 的最后一件事是从目标表中删除所有数据 这些数据的条件在触发器的插入部分期间可能已更改 除了最后的之外 一切似乎都在触发DELETE陈述 它正在执行D
  • MySQL - 将字段的默认值设置为字符串连接函数

    我有一个看起来有点像这个的表 actor forename surname stage name 我想将 stage name 更新为默认值 forename surname So that insert into actors foren
  • 将 Linq 表达式转换为 SQL Server 查询

    我正在使用一些 crm 框架 该框架没有任何内部 orm 并且不使用实体框架 仅使用纯 sql 查询 我在数据库中的每个表都有实体 所以我有例如 public class Customer public string FirstName g
  • GRANT EXECUTE 所需的权限

    我正在为需要能够创建和删除过程但也向其他用户授予执行权限的用户创建一个组 GRANT CREATE PROCEDURE TO xxx xxx GRANT ALTER ON SCHEMA dbo TO xxx xxx 但是 我需要向组授予什么
  • 查找每个客户组的最新帐户

    我有一个包含客户信息的表 每个客户都会分配一个客户 ID 他们的 SSN 他们在开设更多帐户时会保留该 ID 两个客户可能使用同一个帐户 每个客户都有自己的 ID 帐号不按日期排序 我想找到每个客户或客户组的最新帐户 如果两个客户曾经一起使
  • 当 SQL 包含变量时在 pgAdmin 中调试 SQL

    在 SQL Server 中 我可以从应用程序中复制 sql 代码并将其粘贴到 SSMS 中 声明并分配 sql 中存在的变量并运行 是的 很棒的调试场景 例如 请注意 我很生疏 语法可能不正确 declare x as varchar 1
  • Oracle数据库中的自增主键

    我想在 SQL Server 的列中实现标识或自动递增值 CREATE TABLE RollingStock Id NUMBER IDENTITY 1 1 Name Varchar2 80 NOT NULL 如何才能做到这一点 正如 Orb
  • sql查询中where子句中的CASE语句

    我正在尝试在我正在处理的查询的 where 子句中编写一个 case 语句 我正在水晶报告中导入代码 我基本上是想说明变量 类型 是否设置为 创建 以便在where子句中为该日期范围运行 否则为不同的日期范围运行 它一直给我一个错误 我似乎
  • 大型数据集的报告工具/查看器

    我有一个数据处理系统 可以根据其处理的数据生成非常大的报告 我所说的 大 是指该系统的 小 执行在转储到 CSV 文件中时会产生大约 30 MB 的报告数据 而大数据集大约为 130 150 MB 我确信有人有更大的想法 大 但这不是重点
  • 存储过程 EXEC 与 sp_executesql 的区别?

    我写了两个存储过程 其中一个是sp executesql而其他没有 sp executesql 两者都正确执行相同的结果 我不明白两者之间有什么区别 EXEC SQL 与 EXEC sp executesql SQL N eStatus v
  • Oracle 函数编译成功,但在执行 PLS-00221 时抛出错误:不是过程或未定义

    我有简单的oracle功能 create or replace function abs test func test in in number return number is test out number BEGIN test out
  • 有没有办法将应用程序上下文与非 Sybase DB 服务器中的数据库连接进行通信(类似于 Sybase 中的 set_appcontext)?

    Sybase 有一种让应用程序进行通信的方法 上下文 数据 http manuals sybase com onlinebooks group as asg1250e sag Generic BookTextView 38861 hf 0
  • 从 Visual Studio 调试 SQL Server 2005 中的存储过程?

    我在这里和其他地方看到很多令人沮丧的问题 但没有明确的答案 我试图让存储过程进行调试 但没有成功 客户端 VS2005或VS2008 两者都不起作用 当我从存储过程上下文菜单中选择 步入存储过程 时 我在调试窗口中看到 已被用户取消 这就是
  • LINQ-to-SQL 是否支持组合查询?

    作为一名不懂 C 的程序员 我对 LINQ 查询的求值语义很好奇 如下所示 var people from p in Person where p age lt 18 select p var otherPeople from p in p
  • mysql变量赋值:如何强制赋值顺序?

    由于mysql是一种声明性语言 我找不到强制赋值变量顺序的方法 采取这个查询 SET v1 0 SET v2 0 SELECT v1 v2 FROM MyTable table WHERE v1 v2 is not null AND v2
  • 将 SQL 中的数据存储在数组中

    我正在尝试将 sql 数据库中的数据存储到数组中 目前我有这个 query mysql query SELECT FROM InspEmail WHERE Company LIKE company while row mysql fetch
  • 如何编辑表以启用级联删除?

    我有一个代表用户的表 当用户被删除时我得到 DELETE 语句与 REFERENCE 约束冲突 显然 CASCADE DELETE在SQL Server中并不像我想象的那么容易 需要将选项添加到表中 问题是 我不知道如何添加CASCADE
  • 获取 SQL 表上未使用的唯一值

    我有一个表 其中有一列描述数字 ID 该 ID 对于所有行都是唯一的 但它不是主键 数字 ID 是有限的 假设答案可以是从 1 到 10 SELECT ID FROM TABLE ID 1 2 5 我必须 通过 UI 向用户呈现未使用的值
  • SQL Server:比较两个表中的列

    我最近完成了从某些应用程序的旧版本到当前版本的迁移 在迁移数据库时遇到了一些问题 我需要一个可以帮助我比较两个表中的列的查询 我的意思不是行中的数据 我需要比较列本身来弄清楚我错过了表结构的哪些变化 看一下红门 SQL 比较 http ww

随机推荐

  • 绑定 SelectedItem 与 SelectedIndex - 我什么时候应该选择其中之一?

    假设您有一个对象类型 Foo 的可观察集合 并且有一个用户将从中进行选择的自定义 ListView 您绑定的数据对象 property with getter setter INotifyPropertyChanged Observable
  • 如何列出所有未更改(跟踪)的文件?

    我将旧的 git image 解压缩到我的 git 存储库中 大部分文件已更改 我想知道哪些文件保持不变 如何列出这些文件 我没有找到任何纯粹的 git 内容 但使用一些 bash 是可能的 git ls files modified gi
  • 如何在一秒内计算任意 n <= 600 的最短加法链?

    你如何计算最短加成链 sac 对于一秒内任意 n Notes 这是编程竞赛codility这个月 加法链在数值上非常重要 因为它们是计算 x n 通过连续乘法 的最经济的方法 Knuth s 计算机编程艺术 第 2 卷 半数值算法对加法链和
  • (如何)我可以增加Android WebView中LocalStorage的配额限制

    我需要增加 Android WebView 中 LocalStorage 的默认配额限制 目前我只能使用大约2 5MB 当尝试存储更多数据时 quota exceeded err dom exception 22 被提出 有什么想法或者我必
  • 无法使用 ruby​​ selenium webdriver 连接到浏览器

    我尝试使用 ruby selenium webdriver 运行一些基本的自动化测试 相同的代码在我的家庭计算机上完美运行 但在位于代理 不需要身份验证 后面的工作计算机上失败 驱动程序 Selenium WebDriver for fir
  • mongo-go-driver 通过 _id 查找文档

    我试图通过自动生成的 id 字段查找文档 下面的代码不返回任何内容 var documentID bson RawValue documentID Type 7 documentID Value byte 5c7452c7aeb4c97e0
  • JList 项目中的自动换行

    我有一个JList项目名称很长 导致水平滚动条出现在滚动窗格中 无论如何 我可以自动换行 以便整个项目名称显示在两行中 但可以一键选择吗 I E它仍然应该behave作为一个单一的项目 但显示的分成两排 这是我在看到下面的例子后所做的 我向
  • 如何使用networkx绘制子图

    我尝试根据节点名称列表从 networkx 中的 karate club graph 绘制子图 但失败了 如何绘制我想要显示的子图 import networkx as nx from matplotlib import pylab as
  • jQuery 获取选择选项 ID 并更改隐藏输入值

    我有一个带有选择列表的表单 每个选项还包含一个动态 ID 我需要捕获该 ID 然后使用它来更改隐藏输入的值 因此 基本上采用选定的选项 id 并更改隐藏输入值的值 我的选择和隐藏输入如下所示
  • 有人可以向我解释一下 Java 中通过“值”而不是“引用”传递的原因是什么吗?

    我对 Java 相当陌生 多年来一直在写其他东西 除非我遗漏了一些东西 并且我很高兴在这里犯了错误 否则以下是一个致命的缺陷 String foo new String thisDoesntWork foo System out print
  • Hibernate:hbm2ddl 反转列顺序[重复]

    这个问题在这里已经有答案了 我让 hbm2ddl 为我创建表 出于开发目的 并且列的顺序与类中字段的顺序相反 我怎样才能让它以与类相同的顺序创建列 我认为 Java 类不存储字段的顺序 因此 Hibernate 根本不知道源中的顺序是什么
  • 使用已知但无法访问的 wsdl 创建 Web 服务客户端

    与我们合作的一家公司通过电子邮件向我们提供了 wsdl 和 xsd 架构 我们所连接的 Web 服务是通过 IPsec 隧道访问的 已发布的 WSDL 中有本地引用 在其末尾 这意味着我们无法使用它 第一个问题 这是常见的设置吗 我认为拥有
  • Celery任务链取消?

    我发现celery支持任务链 http celery readthedocs org en latest userguide canvas html chains 问题是 如何停止任务中链的执行 例如 我们得到了 N 个项目的链 N gt
  • 使用主应用时如何刷新Widget?

    我正在使用一个UIKit应用程序并添加了一个小部件SwiftUI and Widgetkit 现在 当用户在主应用程序中执行某项操作时 我想更新小部件 通常我应该使用WidgetCenter shared reloadAllTimeline
  • 如何在 Selenium WebDriver 中检查单选按钮是否被选中?

    这是我的 HTML 代码 div class selectCard left div
  • 使用 Carrierwave (HTML5) 将多个文件一次上传到 Rails 应用程序

    我很接近 非常接近 我可以很好地上传单个文件 但是当我更改表单的类型时file field to multiple gt true所以我可以一次上传多个图像 我上传的文件被包装在一个数组中 并且 accepts nested attribu
  • iOS 8 Today 扩展中的拖动手势

    我正在使用一个UIView我的 今日 小部件中的子类 该视图使用滑动手势 然而 这些手势要么上下滚动整个通知中心 要么使通知中心从Today to 通知 有什么办法可以防止触摸事件冒泡到通知中心滚动视图吗 使用 self setExclus
  • 使用 SASS 时如何从不同目录导入文件?

    在SASS中 是否可以从另一个目录导入文件 例如 如果我有这样的结构 root directory sub directory a common scss template scss sub directory b more styles
  • 根据自签名证书颁发机构验证服务器证书

    我有自定义服务器 客户端应用程序 它们使用 SSL 加密的 TCP 连接 自定义协议 相互通信 为了设置服务器证书 我创建了一个自签名证书颁发机构 并使用它来签署证书以供服务器使用 在客户端 我想验证我正在连接的服务器的证书是否由我的自签名
  • 按不在选择中的字段进行分组

    我想知道讲师在特定年份教授了多少个模块 并希望选择讲师的姓名以及该讲师的模块数量 问题是因为我正在选择Name 我必须按名称对其进行分组才能使其正常工作 但如果有两个同名讲师怎么办 然后 sql 会将它们合一 这将是错误的输出 所以我真正想