问题标签 [having-clause]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
684 浏览

mysql - 重写子查询有子句进入连接?

我有一张这样的表格;

位点、染色体、链。

这对位点和染色体应该是唯一的,而它们可以有多个链。在加载数据之前,我发现有些站点的染色体不止一个,这显然是一个错误。我试图找出错误,即多于 1 条染色体的位点。我已经考虑过了,但无法提出正确的 SQL。所以我把问题分开了。首先,我创建一个选择不同记录的表;

然后我可以通过这个找到具有多个染色体的位点;

它工作得很好。然后尝试从原始表中查看错误的全部信息,我这样做了;

然后这个子查询太慢了,即使列都被索引了。

我试图将查询重写为连接,但这样做很困难。请帮我。

====================

感谢所有回答这个问题的人。我的数据看起来像这样。

在这种情况下,N111 很好,但 N112 是错误的,因为它有两个染色体数据。由于链的原因,第二个答案的子查询选择了 N111 和 N112,这与我遇到的问题相同。具有多列的按功能分组的工作方式与我的猜测不同。但是,建议的答案给了我一个线索 group by 如何工作,以便我可以稍微修改它以使其工作。这两个答案给出了相同的结果。再次感谢各位。

地点

0 投票
1 回答
1365 浏览

sql-server - ColdFusion MsSQL HAVING SUM() 与 NULL 值

我用 CF 9 和 MsSQL 2005 对此进行了测试

然后在 Ms SQL Server Management Studio Express 中查询

结果是

替代文字

然后我尝试使用 cfquery

结果是

替代文字 替代文字

编辑(从这里开始):向下滚动到调试器我有这个

替代文字

该红色区域表示 qryHavingSum_4 已执行,记录为 0,但在Exception部分中 qryHavingSum_4 未定义(<cfdump var="#qryHavingSum_4#">编辑(到此结束)

如果我将 qryHavingSum_4 更改为

结果是

替代文字

然后我尝试使用其他运算符更改SUM(B_INT)(不带 ISNULL)和(不带 ISNULL)并且它有效。HAVING SUM(B_INT)> >= < <= <> !=

为什么我不能=在 CF 中使用上面的 with 查询?是CFbugs吗?

谢谢你

0 投票
4 回答
511 浏览

sql-server-2008 - SQL Select - 向 Select 添加字段正在更改结果

我被这个 SQL 问题难住了,我怀疑这对于那里的人来说很容易。

我有一个表,其中包含代表多个每日排名项目列表的行。相关字段如下:ID、ListID、ItemID、ItemName、ItemRank、Date。

我有一个查询,它返回昨天但今天不在列表中的项目(列表中的项目),如下所示:

基本上我正在寻找最大日期是昨天的记录。它工作正常,并显示每个项目以前在列表中的天数(虽然不一定是连续的,但现在没问题)。

问题是当我尝试添加排名以查看昨天的排名时。我尝试了以下方法:

这将返回比前一个查询更多的记录,因此有些地方不对劲。我想要相同数量的记录,但包括排名。我可以通过使用子查询进行自联接并获取 ItemID 昨天而不是今天出现的记录来获得排名 - 但后来我不知道如何获得 Count 了。

提前感谢您对此的任何帮助。

======== 已解决 ===============

基本上,我所做的是创建一个子查询来查找这两天出现的所有项目,并找到昨天出现但不在这两天出现的项目集中的项目。然后我能够正确地执行聚合函数和分组。如果这比必要的更复杂,我不会感到惊讶,但我理解它并且可以根据需要对其进行修改,并且性能似乎不是问题。

再次感谢大家!

0 投票
3 回答
2067 浏览

sql - 使用 HAVING 运算符的简单查询

我有一个员工表,它由两列组成:员工和部门 ID 如下

我想通过简单的查询选择拥有两名以上员工的部门。想出了以下内容:

但是在执行过程中它抱怨无效的列名(数量)。我很确定使用聚合函数两次(选择 count() ... 有 count())是不正确的。我错过了什么吗?ps“直截了当”的解决方案是我猜

0 投票
4 回答
29547 浏览

mysql - 有没有像“WHERE XXX NOT IN”这样的“NOT HAVING”语法?

  1. 我有几个查询获取将来将被删除的行的 ID 号。
  2. 行号被放入一个字符串并放置在下面的查询中(您看到“2”)。
  3. 我希望结果忽略这些行(好像它们已经被删除了)。

    /li>

我的猜测是我需要用“HAVING”替换“WHERE”行,但我找不到“NOT HAVING”语法。

当前编写此查询的方式,如果位置的最大 id 列在 WHERE 子句中,它将不会返回 T1.position 的行。

如何让这个查询给我 T1.position 的最大 ID,同时忽略 WHERE 子句中列出的 ID 行?

0 投票
2 回答
31271 浏览

group-by - 在 MongoDB GROUP BY 中进行 HAVING 的正确方法是什么?

对于 SQL 中的这个查询(查找重复项)是什么:

我在 MongoDB 中执行了这个简单的查询:

我添加了一个简单的 Javascript 循环来遍历结果集,并执行了一个过滤器来查找所有计数 > 1 的字段,如下所示:

除了在客户端使用 javascript 代码之外,还有更好的方法吗?如果这是最好/最简单的方法,请说它是,这个问题会对某人有所帮助:)

0 投票
1 回答
1153 浏览

postgresql - PostgreSQL:有子句没有按预期工作

我有一个用户DE9013,在 SQL 表中有两个正面评价:

而fair + nice评级的总和正如预期的那样是四个:

我的问题是:为什么我会在下面的列表中找到用户9013,我试图在其中找到所有玩过 30 多场完整游戏并且评分(一般+)高于 30 的用户?

将 PostgreSQL 8.4.7 与 CentOS 5.7 / 64 位一起使用

0 投票
4 回答
25630 浏览

sql - SQL中WHERE和HAVING的区别

可能重复:
SQL:HAVING 和 WHERE 有什么区别?

我看过关于WHERE和的各种讨论HAVING。我还有一个问题:HAVING仅在考虑聚合时使用,或者它可以用于更一般的术语:每当您在查询中创建或别名字段时?我知道WHERE应该尽可能使用它。

0 投票
1 回答
211 浏览

mysql - 如何将一个表连接到另一个用户 ID = 用户 ID 但仅针对该日期的表?

我希望了解用户在他的工作站上处理每批的总时间、估计完成的总工作量、支付给用户的金额以及用户今年每天的失败次数。如果我可以将所有这些加入到一个查询中,那么我可以在 excel 中使用它并在数据透视表等中很好地格式化。

编辑:我意识到只能在多个查询中执行此操作,因此我将范围缩小到:

交叉连接导致了问题。

0 投票
3 回答
686 浏览

mysql - Mysql限制每组奇怪的结果的行数

我想获得每个 4 的最新日期symbolid我在这里修改了代码如下:

并得到以下结果:

显而易见的问题是,为什么我每次只得到 3 行symbolid,为什么它们的编号是 1、3、5?一些细节:

  1. 我尝试了强制索引而不是强制索引(如此处所示),并且两种方式都得到了相同的结果。
  2. 日期是正确的,即列表正确显示了前 3 个日期symbolid,但 row_number 值关闭
  3. 当我不使用“有”语句时,行号是正确的,即最近的日期是 1,下一个最近的日期是 2,等等

显然row_number计算字段受到“有”子句的影响,但我不知道如何修复它。

我意识到我可以将“拥有”更改为“拥有 row_number < 7”(6 与 5 相同),但它非常难看,我想知道如何让它“表现”。