当前位置: 首页 > 面试题库 >

通过ENUM值检索SUM(count)

岳俊雅
2023-03-14
问题内容

这是我的表的一个例子:

drug_id | route (enum) | count
------------------------------
1       | PO           | 2
1       | IV           | 4
1       | IV           | 6
2       | PO           | 1
2       | PO           | 5
2       | IV           | 2

这就是我需要的信息。基本上是它,SUM(count)但在每个“路线”的列中:

drug_id | PO | IV 
-----------------
1       | 2  | 10
2       | 6  | 2

我以为我需要一个枢轴,这是我正在尝试学习的,但是我无法在我的一生中拼凑出一个行之有效的简洁查询。

我已经尝试过类似的事情:

SELECT drug_id, PO, IV 
FROM 
    (
        SELECT drug_id, SUM(count) as PO, '0' as IV FROM `core_reports_antiinfectives` WHERE route="PO"
        UNION
        SELECT drug_id, SUM(count) as IV, '0' as PO FROM `core_reports_antiinfectives` WHERE route="IV"
    ) aa

但是,这为我0提供了“全部”IV列,无论如何我都不相信它是适当的-它需要“分组”drug_id并将各列放在一起,这也是我所坚持的。

有什么我想念的吗?还是有更好的方法来解决这个问题?

谢谢!


问题答案:

试试这个

SELECT drug_id,
        SUM(case route when 'po' then `count` else 0 end) totalPO,
        SUM(case route when 'iv' then `count` else 0 end) totalIV
FROM core_reports_antiinfectives
GROUP BY drug_id


 类似资料:
  • 问题内容: 我正在尝试存储一个Integer并使用KeyChain对其进行检索。 这是我如何保存它: 这是我尝试检索它的方式: 我收到以下错误: 无法将类型’__NSCFNumber’的值强制转换为’NSString’ 我尝试使用变量,但没有成功。 问题答案: 好吧,我只是用光了源代码等,并做了自己的好帮手:尽情享受吧!

  • 问题内容: 我是mongoDB的新手。我正在使用java和mongoDB。我有一个像 在集合中,所有文档的名称都不同,我只知道键名,如何获取值? 在mongo网站上,我只能找到和。 谢谢! 问题答案: 足够。 在Java中,它将是:

  • 问题内容: 我有: 我得枚举名称(,,只能使用IDS(40,60,80))。我该怎么做? 问题答案: 在您要搜索的静态方法中创建一个静态方法(隐式方法/成员,不知道确切是哪个方法)并返回相应的值。对于该方法找不到匹配值的情况,应创建一个特殊的条目,例如,可以返回。这样,您不必返回,这总是一个坏主意。 顺便说一句-您的代码似乎是错误的。之后的括号似乎不属于那里。

  • 问题内容: 我将Firebase,后端即服务用于我的网站应用程序,并通过AngularJS进行编程。 我想使用数据库查询来获取记录,例如: 我在Firebase服务器中具有电视连续剧数组 JSON CODE : 我现在使用的代码来解决这个问题: 我想在不使用和的情况下解决这个问题。我应该怎么做? 就像这样: 问题答案: 我有一些建议可能会帮助您: 查阅Firebase查询文档。特别, 您可以结合使

  • 我想从AOP连接点检索一个注释。我能够通过反射获得注释,但无法通过ProcedingJoinPoint获得注释。 我的注释方法 我的绒球

  • 问题内容: 假设此JSON对象: 可以像这样检索“ set2”属性: 有没有一种方法可以通过索引检索“ set2”属性?它是JSON对象的第二个属性。这是行不通的(当然): 因此,假设我要检索JSON对象的第二个属性,但我不知道它的名称-那么我该怎么做? 更新: 是的,我知道对象是无序属性的集合。但是我不认为浏览器会干扰JSON文字/字符串定义的“原始”顺序。 问题答案: JavaScript中的