合计投票结果

2023-12-24

我有一张选票,每个选民获得 3 票,从 10 名不同的候选人中进行选择。投票 1 得 3 分,投票 2 得 2 分,投票 3 得 1 分。

我有以下 SQL 查询来计算每次投票获得的总分(因此投票 1、2 和 3 的结果是分开的)。

我需要做的是将所有这些结果放在一个表中,但我不太确定从哪里开始。

SELECT cn.cand_name, (count(vote_1) * 3) as vote_1 FROM candidate_votes cv Inner Join candidate_names cn ON cv.vote_1 = cn.cand_number GROUP BY cand_name;

SELECT cn.cand_name, (count(vote_2) * 2) as vote_2 FROM candidate_votes cv Inner Join candidate_names cn ON cv.vote_2 = cn.cand_number GROUP BY cand_name;

SELECT cn.cand_name, (count(vote_3) * 1) as vote_3 FROM candidate_votes cv Inner Join candidate_names cn ON cv.vote_3 = cn.cand_number GROUP BY cand_name;

我有以下结果表:

Voter_number    Vote_1     Vote2      Vote3
123             cand_1     cand_3     cand_2
456             cand_2     cand_1     cand_3
789             cand_2     cand_3     cand_1

以及以下候选姓名表:

cand_number     cand_name
cand_1          Dave
cand_2          Sarah
cand_3          Nigel

所以我正在寻找的结果将类似于:

Candidate       Votes
Dave            6
Sarah           7
Nigel           5

SELECT
    cn.cand_name, 
    count(cv1.vote_1) * 3 as vote_1, 
    count(cv2.vote_2) * 2 as vote_2, 
    count(cv3.vote_3) as vote_3
FROM
    candidate_names cn
    LEFT JOIN
    candidate_votes cv1 ON cv1.vote_1 = cn.cand_number
    LEFT JOIN
    candidate_votes cv2 ON cv2.vote_2 = cn.cand_number
    LEFT JOIN
    candidate_votes cv3 ON cv3.vote_3 = cn.cand_number
GROUP BY cn.cand_name;

这也允许您添加所有投票

(count(cv1.vote_1) * 3) +
    (count(cv2.vote_2) * 2) +
    count(cv3.vote_3) as totalvotes

编辑:行被 JOIN 相乘,这就是 cand2 和 cand3 错误的原因

SELECT
    cn.cand_name, 
    SUM(CASE WHEN cv.vote_1 = cn.cand_number THEN 3 ELSE 0 END) as vote_1, 
    SUM(CASE WHEN cv.vote_2 = cn.cand_number THEN 2 ELSE 0 END) as vote_2, 
    SUM(CASE WHEN cv.vote_3 = cn.cand_number THEN 1 ELSE 0 END) as vote_3
FROM
    candidate_names cn
    JOIN
    candidate_votes cv ON cn.cand_number IN (cv.vote_1, cv.vote_2, cv.vote_3)
GROUP BY cn.cand_name;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

合计投票结果 的相关文章

  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • Spark.read 在 Databricks 中给出 KrbException

    我正在尝试从 databricks 笔记本连接到 SQL 数据库 以下是我的代码 jdbcDF spark read format com microsoft sqlserver jdbc spark option url jdbc sql
  • 为什么 SqlClient 在传递 SqlXml 时使用不必要的 XML 转换?

    我有一个关于从 C 代码将 xml 数据类型传递给查询的问题 首先 这是 SQL Server 上的一个表 CREATE TABLE dbo XmlTable id int IDENTITY 1 1 NOT NULL dat xml NOT
  • 如何在 SQL Server 存储过程中对用户定义的表类型执行 ForEach?

    XX PROCEDURE dbo XXX X dbo IntType readonly AS BEGIN SET NOCOUNT ON how can I foreach X here and do process individually
  • C#的数组列表可以用来填充SSIS对象变量吗?

    我已在 C 脚本中填充了一个列表 并将其值分配给 SSIS 对象变量 然后 我使用该对象变量通过循环遍历 For every do 枚举器来执行一些 SQL 查询 我尝试通过 Foreach ado 枚举器执行此操作 但出现错误 X 变量不
  • 如何在NiFi中映射流文件中的列数据?

    我有 csv 文件 其结构如下 Alfreds Centro Ernst Island Bacchus Germany Mexico Austria UK Canada 01 02 03 04 05 现在我必须将这些数据移入数据库 如下所示
  • VB6+SQL-Server:如何使用 ADODB.Command 执行带有命名参数的查询?

    我一直在尝试使用 ADODB Command 执行参数化查询 我知道我可以使用 对于参数 但我的查询相当大 我真的不想跟踪参数的确切顺序 我尝试了类似以下的操作 objCmd CommandType adCmdText objCmd Com
  • 优化 SQL Server 上的删除

    Deletesql server 上的有时很慢 我经常需要优化它们以减少所需的时间 我一直在谷歌上搜索一些关于如何做到这一点的提示 并且我发现了各种各样的建议 我想知道你最喜欢和最有效的驯服删除野兽的技术 以及它们如何以及为什么起作用 到目
  • 在 SQL 中将数字求小数次幂

    我试图在 MS SQL 中将一系列数字求小数 1 5 次幂 但在应用于负基数时出现 域错误 这应该不是问题 因为我要提升到奇次幂根 此外 我可以在 Excel 中进行计算 谁能评论一下 MS SQL 是否根本不支持将负幂提高到小数根 负基数
  • 使用包含和不包含的 Linq 查询

    我正在尝试从数据库中获取记录 它应该 getrecords 其中名称包含 searchKey 并且名称不在 exceptTerms 数组中 并以逗号分隔 我怎样才能在 Linq 中做到这一点 Rows from u in DB Client
  • 如何使用 Windows 身份验证指定 Windows 用户从 ASP 连接到 MS SQL Server 数据库

    我已经尝试了一个多月的时间来将这里的 ASP 脚本连接到 SQL Server 数据库 但每次我使用这个连接字符串时 Data Source dbServer01 Initial Catalog POS123 Integrated Secu
  • T-SQL:用最新的非空值替换 NULL 的最佳方法?

    假设我有这张表 id value 1 5 2 4 3 1 4 NULL 5 NULL 6 14 7 NULL 8 0 9 3 10 NULL 我想编写一个查询来替换任何NULL值与表中最后一个不为空的值在那一栏里 我想要这个结果 id va
  • SQL 2008全文索引填充延迟

    我的经理说 在基础表数据更改后 可能需要一段时间才能更新全文搜索索引 例如 如果我有一张桌子Products有一个柱子Description我更新了该描述 然后我可能需要一些时间才能搜索该新描述 真的吗 这需要多长时间 SQL 2008 对
  • sql查询获取从一月到当月的所有数据,即使没有记录

    我不擅长 sql 所以任何帮助世界都很棒 我有一个 SQL 查询 可以获取从一月到当月注册的记录 我的代码示例 SELECT DatePart YEAR p createStamp as TheYear DatePart MONTH p c
  • 删除数据库中的行后如何重新排序ID

    我正在使用 C 来制作具有 sql 数据库的程序 在数据库中我有一个名为Workers 它有一个自动增量和主键ID column 当我删除一条记录时 ID 之间会出现间隙 删除记录后如何重新排序 ID UPDATE 我要做的就是找到记录后将
  • 数字表与递归 CTE 生成一系列数字

    为什么使用数字表比使用递归 CTE 动态生成它们要快得多 在我的机器上 给定一张桌子numbers单列n 主键 包含从1到100000的数字 查询如下 select n from numbers 大约需要 400 毫秒才能完成 使用递归 C
  • 如何在 SQL Server 中连接

    我的数据库没有特定的列 因此我通过开关在查询中创建了一个列 我需要的是将此列与数据库中的另一列连接起来 select certificateDuration DurationType case when certificateDuratio
  • SQL Server 数据库架构版本控制和更新

    对于我的应用程序 我必须支持更新方案 并且数据库可能会受到影响 我希望能够从旧版本更新到最新版本 而无需安装中间版本 例如 假设我有版本 A 最旧的版本 B 中间版本 和 C 新版本 我希望能够将版本 A 直接更新到版本 C 对于应用程序文
  • 我可以从 SQL Server 读取元数据来了解最后更改的行/表吗?

    我们有一个数据库hundreds的桌子 有没有某种metaSQL Server 中的数据源 我可以以编程方式查询以获取名称最后更改表和行 或者我们是否需要实施这个我们自己每个表中的字段称为上次更改日期时间 etc 就查明表最后一次修改的时间
  • 如何部署“SQL Server Express + EF”应用程序

    这是我第一次部署使用 SQL Server Express 数据库的应用程序 我首先使用实体 框架模型来联系数据库 我使用 Install Shield 创建了一个安装向导来安装应用程序 这些是我在目标计算机中安装应用程序所执行的步骤 安装

随机推荐

  • ASP.NET 和 C# 页面查看计数器:使用数据库

    我正在开发一个类似于 stackoverflow com 概念的项目 会有很多问题 我希望每个问题都有一个页面浏览计数器 我觉得最好的方法是使用数据库 因为问题的数量会很大 而且会随着时间的推移而增加 如果我只创建一个表 那就很容易了问题
  • 虚拟调度实施细节

    首先 我想明确的是我确实明白 C 标准中没有 vtable 和 vptrs 的概念 然而 我认为几乎所有实现都以几乎相同的方式实现虚拟调度机制 如果我错了 请纠正我 但这不是主要问题 另外 我相信我知道虚拟函数是如何工作的 也就是说 我总是
  • Visual Studio Code - C# 控制台应用程序

    可能是重复或非常基本的问题 我最近在 Windows 上下载了 Visual Studio Code 并尝试打开现有的 Hello World 控制台应用程序 我已经下载了相同的 C 扩展 您能否指出我可以在其中找到配置 VS Code 的
  • JQuery 改变表格单元格的内容

    好的 这是一个令人尴尬地简单的问题 为什么下面的 jQuery 示例不起作用 显然应该将表中的 a 更改为 hello HTML 代码 table tr td a td td b td tr table JavaScript JQuery
  • 如何在 .net 中以 4-2-2 格式保存高质量的 jpeg?

    当我使用 bitmap save 保存 jpg 文件时 当我指定编码器和质量时 它会保存为 jpeg 4 1 1 但当我不指定编码器和质量时 它会保存为 4 2 2 我想将其保存为 4 2 2 其质量比默认值更高 使用 bitmap sav
  • /usr/local/bin 和 /usr/local/share 的权限问题

    我在新的 MacBook 上使用 OS X Yosemite 刚刚安装了 Homebrew 和一些必需的软件包 最近搬到了这台新计算机 我注意到偶尔当我安装新的brew 软件包时出现链接错误 由于某种原因 权限 usr local bin
  • JS Cookie 设置在 2 个位置,不会覆盖第一个设置

    我在两个不同的页面上使用相同的脚本来设置相同的 cookie 我的假设是 即使两个页面的路径 略有不同 它们也会简单地覆盖 cookie 而不是复制其中的条目 我的第一页的路径是 example com classifieds busine
  • Java 内存使用情况

    我无法理解 Java 内存的使用情况 我有一个应用程序 其最大内存大小设置为 256M 然而 在某个时间点 我可以看到根据任务管理器 它占用了 700MB 不用说 当发生这种情况时 所有其余的应用程序都会有点反应迟钝 因为它们可能已被换出
  • 为什么这个 SVG 的宽度没有用 ng-attr-width 设置?

    我有一个非常简单的网页来尝试隔离我不理解的 ng 绑定 div div
  • 如何保存完整的网页

    有没有办法使用WebDriver保存完整的网页 目前我执行 getPageSource 然后将所有内容放入 html 本地文件中 但保存的页面形状不佳 奇怪的字符 没有图像 所有元素向下偏移 请参阅下面我使用的代码 Test public
  • 是否可以将我们的对称算法添加到 OpenSSL 中?

    我想将我的对称加密算法添加到 OpenSSL 中 并将其用作 SSL 协议中的对称算法 我需要使用测试它s client 所以我需要一种方式来表示 OpenSSL 将其用作对称算法 OpenSSL 使用 RSA 进行密钥交换阶段就足够了 我
  • 为动态创建的面板添加鼠标单击事件[重复]

    这个问题在这里已经有答案了 您好 我正在用 C 开发一个 Windows 窗体应用程序 我有一个 FlowLayoutPanel 里面有一个动态面板列表 如何为 FlowLayoutPanel 内的面板添加鼠标单击事件 谢谢这个 但是我可以
  • 在 SQL Server 2016 中将 JSON 转换为表

    我正在开发一个 Web 项目 其中客户端应用程序通过 JSON 与数据库进行通信 最初的实现是在 SQL Server 2012 中进行的 不支持 JSON 因此我们实现了一个处理解析的存储函数 现在我们正在转向 2016 支持 JSON
  • 解组时 JAXB 可以获得 XML 注释吗?

    我正在解析一个XML与 JAXB 但XML最后有一条评论 我想解析它来存储它 Xml
  • 完全独立于脚本运行命令[重复]

    这个问题在这里已经有答案了 我最近遇到了一些情况 我想完全独立地启动命令 并且在与脚本不同的进程中 相当于将其输入终端 或者更具体地说 将命令写入 sh 或 desktop 并双击它 我的要求是 我可以关闭 python 窗口而不关闭应用程
  • Eclipse 无法创建就地编辑器

    我有一个故障排除问题 我的 Eclipse 不希望在包编辑器中打开类 Error what i m having 但是 文件是通过 打开方式 gt 文本编辑器 打开的 这看起来有点像魅力 请帮助 我在我的中遇到了这个问题filename x
  • 允许用户使用 cefsharp 浏览器通过鼠标滚轮进行缩放

    我正在运行 cefsharp 75 我想使用 ctrl 键和鼠标滚轮打开缩放功能 我的事件处理程序从未被触发 如果按住 ctrl 并使用鼠标 屏幕将不会移动 所以控件内部有一些东西并处理事件 我只是缺少一个设置吗 我添加了鼠标和键盘缩放 在
  • Applescript 问题 - 将曲目添加到播放列表

    说实话 我什至都不好意思问这个问题 我有一个 Applescript 它应该构建一堆完整专辑的播放列表 除了将曲目实际添加到播放列表之外 一切正常 这是相关代码 repeat with theAlbum in randAlbums set
  • 动态表单,带或不带多部分/表单数据

    我正在用java设计一个简单的CRUD框架 在我的HTML页面中 我有一个动态表单 2个带有用于创建和更新文件上传的多部分 1个没有文件上传和用于删除的多部分 服务器端 请求调制器使用以下命令检查所有参数request getParamet
  • 合计投票结果

    我有一张选票 每个选民获得 3 票 从 10 名不同的候选人中进行选择 投票 1 得 3 分 投票 2 得 2 分 投票 3 得 1 分 我有以下 SQL 查询来计算每次投票获得的总分 因此投票 1 2 和 3 的结果是分开的 我需要做的是