gaps-and-islands相关内容
不使用MSSQL或DB2或Oracle. 没有CTE. 没有OVERLAP谓词. 没有INTERVAL数据类型. 情况:要维修的车辆无法启动,直到 已收到订购工作的所有零件. 在开始维修之前,可能需要多次订购零件. 我们需要提取车辆处于“零件保持"状态的时间 因此对于标识为id = 1的车辆 在4种不同的情况下订购了零件(d1),并收到了零件(d2) ID d1
..
我们正在建立一个查询,以计算每天每小时的事件数.在大多数日子里,有几小时没有任何活动,因此在运行查询的情况下,每小时的活动计数会显示出来,但是存在空白,查询会排除这些空白.我们仍然希望显示没有活动的小时数,并显示零,以便可以绘制零值.我们使用的查询看起来像这样…… select datepart(Year, dev_time) as Year, datepart(Month, dev
..
我有一个具有以下定义的表 CREATE TABLE mytable ( id INT IDENTITY(1, 1) PRIMARY KEY, number BIGINT, status INT ) 和示例数据 INSERT INTO mytable VALUES (100,0), (101,0), (102,
..
我想填写需要开始和结束日期信息的日历对象.我有一列包含一系列日期.有些日期是连续的(相差一天),有些则不是. InfoDate 2013-12-04 consecutive date [StartDate] 2013-12-05 consecutive date 2013-12-06 consecutive date [EndDate] 2013-12-09
..
如何在SQL Server列中找到最小的未使用数量? 我将要从Excel中将大量手动记录的记录导入到SQL Server表中.它们都有一个数字ID(称为文档编号),但是由于不再适用而没有按顺序分配,这意味着从现在开始,当我的网站记录新记录时,它需要为其分配尽可能小的文档编号(大于零)尚未被采用. 是否可以通过纯SQL来完成此操作,或者这是TSQL/代码的问题? 谢谢! 编辑
..
我有一列名为sequence.此列中的数据类似于1,2,3,4,5,7,9,10,15 我需要从表中找到丢失的序列号.哪些SQL查询会从我的表中找到丢失的序列号?我希望得到类似 的结果 Missing numbers --------------- 6 8 11 12 13 14 我只使用一张桌子.我在下面尝试查询,但没有得到想要的结果. select
..
我知道一些基本的sql,但是这超出了我的范围.我看起来高低不一,但没有骰子.我需要查看以下数据,我可以在应用程序层代码中执行此操作.但不幸的是,对于这一特定代码,必须将代码放在数据层中. 我正在使用T-SQL. 表 Date Crew DayType 01-02-11 John Doe SEA 02-02-11 John Doe SEA 03
..
我想在SQL表的计数器列中找到第一个“间隙".例如,如果有值1,2,4和5,我想找出3. 我当然可以按顺序获取值并手动进行操作,但是我想知道是否可以使用SQL进行处理. 此外,它应该是非常标准的SQL,可以与不同的DBMS一起使用. 解决方案 在MySQL和PostgreSQL中: SELECT id + 1 FROM mytable mo WHERE NOT
..
我的初始查询如下: 选择process_date,count(*)batchCount从T1.log_comments 按process_date asc排序; 我需要能够对缺少的周末进行一些快速分析,但想知道是否有一种快速的方法来填充 process_date 中不存在的缺少的日期。 我已经看到了解决方案此处,但对是否存在db2中隐藏的任何魔术都可以对我的原始
..
服务器客户。开始。结束 A. X.12 / 10/2018 12:56 13/10/2018。 13:05 B.K. 12/10/2018 14:05。 12/10/2018。 14:25 A.N 12/10 / 2018.13:08。 13/10/2018。 17:09 A.Y 15/10 / 2018.16:07。 17/10/2018。 14:09 A.F. 18/10/2
..
这是我的数据手指表 [dbo]。[tFPLog] CardID日期时间交易代码 100 2020-09-01 08:00 IN 100 2020-09-01 17:00 OUT 100 2020-09-01 17:10 OUT 200 2020-09-02 02:00 OUT 200 2020-09-02 02:15 OUT 100 2020-09-02 07:00
..
我有一个DateTimes列表,我需要“反转”(因为缺少更好的单词)。 公共类可用 { public可用(DateTime startDate,DateTime endDate) { if(!startDate.Day.Equals(endDate.Day)) 抛出new Exception(“开始日期和结束日期不相等。”); this.StartDate = startDa
..
如何检查范围是否被一组范围 完全覆盖 。在下面的示例中: 其中range(id,a,b)AS( SELECT 1,0,40 UNION SELECT 2,40,60 UNION SELECT 3,80,100 UNION SELECT 4,10,30 ),tests(id,a,b)AS( 选择1,10,90 UNION 选择2,10,60 ) 选择* 从测试 哪里-?
..
希望我能在这方面得到一些帮助。 情况 有两个传入站和一个传出站。扫描项目进出。我需要知道物品在车站多久了。让我们将“在驻地”定义为进入日期扫描和离开日期扫描之间的时间。 问题 一个项目可以(偶然地)在任一站点中多次扫描(为此,我正在考虑确定是否在同一天(不是在几小时内)进行扫描,然后返回最早扫描的时间) 物品可以多次从工作站进站(多次进出扫描) 如果物品被扫描进
..
我有一个名为 vehicledata 的表,该表包含3列: id , Veh No 和 Veh模式。 我的数据如下: id Veh No Veh模式 1 KA03-003空闲 2 KA03-003空闲 3 KA03-003空闲 4 KA03-003驱动器 5 KA03-003驱动器 6 KA03-003驱动器 7 KA03-003驱动器 8 KA03-003驱动器
..
我有一个病人可以接受多种服务的情况。这些服务可能有重叠的日期,并且可能会有空白和孤岛。我正在尝试编写一个查询,以显示患者正在接受某种服务的连续时间。 表如下: 创建表#tt (患者VARCHAR(10),StartDate DATETIME,EndDate DATETIME) 插入#tt 值 ('Smith','2014-04-13','2014-06-04'), ('Smith'
..
我有一个这样的值表 978412,400 978813,20 978834 ,50 981001、20 如您所见,将第二个数字添加到第一个在序列中下一个之前是1。最后一个数字不在该范围内(不遵循直接顺序,如下一个值所示)。我需要的是CTE(是,理想情况下),它将输出此 978412,472 981001,20 第一行包含范围的起
..
我有一张桌子: create table DB.t1 (id SERIAL,name varchar(255)); 并插入一些数据: insert into DB.t1 (name) values ('name1'); insert into DB.t1 (id,name) values (5,'name2'); insert into DB.t1 (name) values (
..
这是对Quarter Segment Customer *Counter* Q1 2018 A A1 1 Q2 2018 A A1 2 Q3 2018 A A1 3 Q4 2018 B A1 1 Q1 2019 B A1 2 Q2 2019 A A1 1 Q1 2020 A A1 *1* I want 1 not 2 here because it's not consecutive (we do
..
我正在寻找将以下数据转换为所需输出的帮助.我们需要在Item,LOC DAY级别的数据,这些数据需要转换为Item,Loc Date Range,以减少表中的记录数以及满足其他要求. Item LOC RP_DATE RP_IND 1003785256 543 2016-11-05 Y 1003785256 543 2016-11-06 Y 1003785
..