当前位置: 首页 > 知识库问答 >
问题:

如何用MySQL过滤所需行

尉迟韬
2023-03-14

亲爱的各位:在获取下表中所有重叠的范围后:

范围

| Count | Status  | Begin      | End  |        Comment               | 
|  1    | used    | 1001       | 1095 | overlaps with ranges 2, 3    |                            
|  2    | hold    | 1005       | 1030 | overlaps with ranges 1, 3    |                
|  3    | unused  | 1017       | 1020 | overlaps with ranges 1, 2    |             
|  4    | used    | 1110       | 1125 | no overlap                   | 

通过使用:


select r1.count, r1.begin, r1.end,
       group_concat(r2.count order by r2.count) as overlaps
from ranges r1 left join
     ranges r2
     on r1.end >= r2.begin and
        r1.begin <= r2.end and
        r1.count <> r2.count
group by r1.count, r1.begin, r1.end;

我现在有一些我想避免的额外信息,例如:

(a)status='unused'的行

(b)没有重叠的行

在发现范围重叠后,您知道如何避免/过滤(a)和(b)吗?

共有1个答案

姬弘文
2023-03-14

我不能绝对肯定我是否理解你是正确的,但对我来说,你似乎正在寻找这样的东西?

select r1.count, r1.begin, r1.end,
   group_concat(r2.count order by r2.count) as overlaps
from ranges r1 
left join ranges r2
     on r1.end >= r2.begin and
        r1.begin <= r2.end and
        r1.count <> r2.count and
        r2.status <> 'unused'
where r1.Count IS NOT NULL and r1.status <> 'unused'
group by r1.count, r1.begin, r1.end;
 类似资料:
  • 问题内容: 有没有一种方法可以通过命令行工具过滤掉文件中的所有唯一行,而无需对行进行排序?我基本上想这样做: 没有排序的性能损失。 问题答案: 删除重复的行: 这是著名的awk单线。关于inet有很多解释。这是一种解释: 这种单线是非常习惯的。它注册在关联数组“ a”中看到的行(数组在Awk中始终是关联的),并同时测试是否看到过该行。如果已经看过前面的行,则a [line]> 0且!a [line

  • 在 MySQL 中,可以使用 HAVING 关键字对分组后的数据进行过滤。 使用 HAVING 关键字的语法格式如下: HAVING <查询条件> HAVING 关键字和 WHERE 关键字都可以用来过滤数据,且 HAVING 支持 WHERE 关键字中所有的操作符和语法。 但是 WHERE 和 HAVING 关键字也存在以下几点差异: 一般情况下,WHERE 用于过滤数据行,而 HAVING 用

  • 它显示当我从选择选项中选择过滤器,但当我改变选择另一个值的过滤器它不重置表,但它追加新的结果与旧的结果它不应该过滤它应该过滤时,选择过滤器选项。 我的PHP从数据库中获取数据。 过滤超文本标记语言 AJAX调用脚本

  • 问题内容: 在ES中是否在查询之前应用了过滤器? 举例来说,我正在做一个非常缓慢的模糊搜索,但是我只是在很小的日期范围内进行。例如,您可以看下面的(PHP): 在尝试进行较慢的搜索之前,是否会应用过滤器? 逻辑将要求先运行筛选器,然后再运行查询,但是我想确定一下。 问题答案: 如果使用-query,则会在对文档计分之前应用过滤器。 通常,这会大大加快速度。但是,模糊查询将仍然使用输入来构建更大的查

  • 问题内容: 我有一个包含JSON对象的数组(_users)。 1-如何仅过滤具有“活动”:“ 1”而不是“ 0”的用户 我已经尝试过这样的事情: 但无法为我正常工作。 谢谢! 问题答案: 由于您的对象模型有点复杂,因此我建议您使用自定义过滤功能: 然后在您的HTML中: 这是工作中的jsFiddle:http : //jsfiddle.net/pkozlowski_opensource/4kzzy

  • 我有一个RESTful服务,它使用预先验证的令牌进行身份验证。我已经实现了我自己的preAuth过滤器,效果很好。我的问题是发送到我的服务的一些请求包含不适用于我的应用程序的BasicAuthoration。(我希望他们没有,他们也不应该,但他们有,我无法控制。) 现在,看起来Spring Security自动生成了一个BasicAuthorization过滤器,但是这个过滤器正在捕捉这些不相关的