如果行数超过 15,则向表中插入与打开行数相等的行数

2024-03-27

My table

id    sum    type
1     3      -1   
1     6      -1    
1     -6      2   
1     -3      1   
1     3      -1
1     6      -1

These

1     3      -1 

是空行。类型始终为-1。总和可以不同。

These

1     -6      2 

是封闭的行。输入!= -1。 sum = -空行的总和

这些行

1     3      -1   
1     6      -1    
1     -6      2   
1     -3      1 

会互相否定。这些

1     3      -1
1     6      -1

会保持。如果最后打开的行数超过 15,那么对于每个打开的行,我需要在表中插入一行,其中 sum 为打开行的 -sum,类型为 2。

Grouping

select id
, sum
, sum(
  case 
  when type = -1 then 1
  when type != -1 then -1
  else 0
  end
) as num
from table
group by id, sum

    id    sum    num
    1     3      2
    1     6      2    
    1     -6      2   
    1     -3      1 

可能会帮助我找到组合。但我不知道之后该做什么。


select      t.val_id
           ,t.val_sum  
           ,2           as val_type

from       (select      val_id
                       ,-abs (val_sum)                                   as val_sum   
                       ,sum (case when val_type = -1 then 1 else -1 end) as occurrences

            from        mytable

            group by    val_id
                       ,abs (val_sum)

            having      sum (case when val_type = -1 then 1 else -1 end) > 15
            ) t
            lateral view  explode (split (space (cast (occurrences as int) - 1),' ')) e
 ;           
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果行数超过 15,则向表中插入与打开行数相等的行数 的相关文章

  • SQL 获取当月前 3 个月的第一天

    我正在尝试选择当前日期前 3 个月的第一天 例如 如果当前日期是 2015 11 08 我的结果是 2015 08 01 我希望采用 yyyy mm dd 格式 我一开始就尝试过这个 但没有运气 SELECT DATEADD dd DAY
  • 针对树结构优化 SQL

    如何从数据库中获取具有最佳性能的树形结构数据 例如 假设数据库中有一个文件夹层次结构 文件夹数据库行所在的位置ID Name and ParentID列 您会使用特殊的算法一次获取所有数据 最大限度地减少数据库调用量并在代码中处理它吗 或者
  • ORA-01438: 值大于此列允许的指定精度

    有时我们会从合作伙伴的数据库中收到以下错误 i ORA 01438 value larger than specified precision allows for this column i 完整响应如下所示
  • oracle 计算两个字符串中连续匹配的单词

    我想要一个返回两个字符串中单词的顺序匹配数的查询 例子 Table Id column1 column2 result 1 foo bar live foo bar 2 2 foo live tele foo tele 1 3 bar fo
  • 将文件保存为 MYSQL 数据库中的 blob 或文件路径

    我知道这些问题是常见问题之一 但我需要您针对具体案例提供帮助 我正在开发一个应用程序 其中一些用户可以添加订单 一些用户可以执行这些订单 这些订单非常具体 因此只有有限数量的用户可以添加它们 然后 为每个订单生成三个文档 每个文档的大小不超
  • 带有输出文件和屏幕输出的 sqlcmd

    我使用 sqlcmd 执行一些命令行批处理 bat 如下所示 sqlcmd i Scripts STEP01 sql o PROCESS log S MYSERVER E d MYDATABASE 我需要一个输出文件 当前有效 以及通过屏幕
  • MySQL:通过迭代并与另一行连接来更新表中的行

    我有一张表纸 CREATE TABLE papers id int 11 NOT NULL AUTO INCREMENT title varchar 1000 CHARACTER SET utf8 COLLATE utf8 unicode
  • Windows 批处理文件中的 SQL 语句

    有没有办法让Windows批处理文件直接输入SQL语句而不需要调用脚本 我希望批处理文件登录SQL 然后直接输入语句 EDIT 我正在使用 Oracle v10g 对于单个命令 您可以使用以下技巧 echo select from dual
  • 想要显示图像

    我有一个小问题 我想要一个可以上传和显示图像的 Django 应用程序 目前 它可以上传图像 但无法显示该图像 例如 comment photo 将打印出路径C Users AQUIL Desktop myproject images P1
  • 在自引用表中查询父项和子项

    我有一个Comments如下表所示 在MySQL content created at id parent id second comment 2014 06 03T10 08 44 0000 37 1 third comment 2014
  • 在 Transact SQL 中何时使用 EXCEPT 而不是 NOT EXISTS?

    我最近刚刚通过阅读同事编写的代码了解到 SQL Server 中存在新的 EXCEPT 子句 有点晚了 我知道 真的让我很惊讶 但是我对它的使用有一些疑问 建议什么时候使用它 使用它与使用 AND NOT EXISTS 的相关查询在性能方面
  • 如何提取 MySQL 日期中的月份和年份并进行比较?

    如何从 mySQL 日期中提取月份和日期并将其与另一个日期进行比较 我找到了 this MONTH 但它只获取月份 我寻找月份和年份 在Mysql Doku中 http dev mysql com doc refman 5 5 en dat
  • 使用 python 从 hive 读取数据时的性能问题

    我在 hive 中有一个表 其中包含 351 837 110 MB 大小 记录 我正在使用 python 读取该表并写入 sql server 在此过程中 从 hive 读取数据到 pandas dataframe 需要很长时间 当我加载整
  • 非聚合查询内部的聚合情况

    我有一个相当大的查询 其最简单的形式如下所示 select r rep id u user id u signup date pi application date pi management date aum from table1 r
  • 使用准备好的语句设置表名称

    我正在尝试使用准备好的语句来设置表名以从中选择数据 但在执行查询时不断收到错误 错误和示例代码如下所示 Microsoft ODBC Microsoft Access Driver Parameter Pa RaM000 specified
  • SSIS ODBC SQL 参数

    我在 odbc 源数据流任务中有一个 SQL 命令需要采用参数 但不存在添加参数的选项 我尝试将数据库添加为与 ODBC 提供程序的 ADO NET 连接 但也没有可用的参数 还尝试将其作为 OLEDB 连接 但没有可用于 ODBC 的提供
  • 为什么 T-SQL 块即使不应该执行也会给出错误?

    我正在编写一个 看似 直接的 SQL 片段 它在确保列存在后删除该列 问题 如果该列不存在 则代码insideIF 子句抱怨它找不到该列 出色地 doh 这就是为什么它位于 IF 子句内 所以我的问题是 为什么一段不应该执行的代码会出错 这
  • 如何在 WHERE 子句中最佳地使用 COALESCE() ?

    这是我的查询 select coalesce qa2 subject qa subject as question subject qa body select count from viewed items vi where coales
  • Laravel 5.4 上传原始文件名和扩展名

    通过表单提交文件时 如何将原始文件名 file jpg 上传到数据库 控制器 public function addCv Request request cv Cv create request gt all file request gt
  • 连接2个表区分大小写

    我有 2 个表 需要获取品牌代码的结果 例如 在数据库中 我有两个不同的品牌 但它们的代码是相同的 只有小写和大写不同 例如 代码名称 关于耐克 和阿迪达斯 如何在代码上内连接 2 个表以分别获取这 2 个表 现在 在内连接之后我得到了这

随机推荐

  • TCP打孔(NAT穿越)库什么的?

    我想用 C 进行 TCP 打洞 NAT 穿越 如果需要 可以使用集合服务器来完成 我发现http sharpstunt codeplex com http sharpstunt codeplex com 但无法让它发挥作用 理想情况下 我需
  • iOS 景观左、右、错

    TL DR iOS 文档不同意Info plist关于哪个方向 横向左与右 的主页按钮位于哪一侧 我错过了什么吗 例如 代码的方向有区别thinks它所在的位置以及设备的方向knows它在 请参阅下面标记为 的倒数第二个要点 该文档用于UI
  • SELECT 语句中的列别名不适用于 SQuirrel SQL + Firebird

    我尝试使用 SQuirrel SQL 3 4 Firebird 1 5 Driver JDBC Jaybird 2 2 0 1 JVM 1 7 0 03 在 SELECT 语句中添加列别名 但不起作用 别名列与列的原始名称一起出现 在另一个
  • Collectors.toSet() 和 HashSet

    采取以下示例代码行 Set
  • Spring AMQP Java 客户端中的队列大小

    我使用 Spring amqp 1 1 版本作为我的 java 客户端 我有一个大约有 2000 条消息的队列 我想要一个服务来检查这个队列大小 如果它是空的 它会发出一条消息说 所有项目已处理 我不知道如何获取当前队列大小 请帮忙 我用谷
  • 以编程方式(无需 XML)为 Android 视图设置属性(边距、重力等)

    我需要在 java 活动类中创建一个 GUI 布局 视图 我知道使用 xml 布局文件更加灵活且更容易 但我现在不想使用它 我找不到任何 setGravity 但我不知道如何使用 Gravity 对象 或 View 对象的任何 setset
  • C11内存模型——两个线程执行atomic_fetch_add,然后执行atomic_load——可能输出什么?

    考虑以下测试程序 该程序在完全实现 C2011 原子和线程的实现上编译和运行 include
  • $this->db->insert_id();每次在 codeigniter 中返回 0 [重复]

    这个问题在这里已经有答案了 我正在使用 codeigniter 并一次插入一条记录 但问题是 this gt db gt insert id 每次都返回 0 但是记录已成功创建 我无法弄清楚 这是常见情况还是我犯了一些愚蠢的错误 我使用 e
  • C++ Visual Studio“非标准语法;使用‘&’创建指向成员的指针”[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我多次遇到此错误 错误 C3867 非标准语法 使用 创建指向成员的指针 我知道这个问题已被问过很多次 但我不明白为什么会出现问题
  • 如何卸载隐藏/不活动的 jquery ui 选项卡?

    我在我的 asp net mvc Web 应用程序中使用 Jquery UI 选项卡 我总共有 6 个选项卡 每个选项卡都包含一个用户控件 我使用 ajax 将内容动态加载到每个选项卡中 如下所示 div align center ul l
  • 什么是“一流”对象?

    在给定的编程语言中 什么时候对象或其他东西被称为 一流 为什么 它们与非它们的语言有何不同 当人们说 一切都是对象 就像在 Python 中 时 他们真的意味着 一切都是一流的 吗 简而言之 这意味着该对象的使用没有任何限制 它是一样的 任
  • zsh 更改提示输入颜色

    我想更改 zsh 中输入文本的颜色 我为每个命令键入的文本 示例 在user host gt ls 我想要ls 为黄色以从标准输出中脱颖而出 我知道我可以完成这个bash using export PS1 BIGreen u h w IYe
  • 以编程方式删除 AppWidget

    我最难弄清楚如何以编程方式删除主屏幕 AppWidget 即无需用户实际将其拖入垃圾箱 举个例子 考虑一个可以有多个帐户的应用程序 每个帐户有任意数量的小部件 一旦删除帐户 小部件也应该被删除 我尝试过遵循一个不起眼的例子http www
  • 自动对焦仅适用于页面刷新

    我有一个弹出窗口中的表单 我设置了自动对焦属性autofocus autofocus 但当表单加载时它不会聚焦 但是如果刷新页面它会聚焦 该表格被插入到div 表格样本 First Name
  • 从 AsyncTaskLoader 更新进度条?

    使用 AsyncTaskLoader 时 如何更新显示更新状态的进度条 通常 您会等待回调完成后删除 但是如何进行运行更新呢 您会让主线程 ui 在设置数据时轮询数据吗 编辑 我正在谈论异步任务加载器 看loader部分 这是课程链接 ht
  • 如何使用 vagrant 定义网络设置

    我在 vagrant 中运行 Ubuntu 这是 Vagrantfile Vagrantfile API syntax version Don t touch unless you know what you re doing VAGRAN
  • 如何将带有值的命令行参数传递给 Inno Setup 编译器,以便我可以在代码中使用它们?

    我有两种可能的构建选项 由于我不希望我的客户使用某些参数启动安装程序 因此我最好将它们传递给编译器并在我的代码中完成所有工作 假设我有变量UNION它可能有两个值 0 and 1 我必须在代码中分析该变量的值 并根据结果包含或不包含某些文件
  • Hibernate与oracle dblink的实现

    刚接触hibernate 有没有办法在hibernate上实现oracle dblink 例如select from tablename dblink在hql中使用 在 Oracle 中为 tablename dblink 创建 SYNON
  • phantomjs 支持 Bayeux 或 WebSockets 吗?

    只是简单的问题 因为我在文档中没有找到任何参考资料 只是一个简单的答案 PhantomJS 1 x 不支持 但 PhantomJS 2 确实支持 websockets PhantomJS 2 0 0 的 Modernizr 输出
  • 如果行数超过 15,则向表中插入与打开行数相等的行数

    My table id sum type 1 3 1 1 6 1 1 6 2 1 3 1 1 3 1 1 6 1 These 1 3 1 是空行 类型始终为 1 总和可以不同 These 1 6 2 是封闭的行 输入 1 sum 空行的总和