RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-375393

Gipnomanul's questions

Martin Hope
Gipnomanul
Asked: 2022-07-02 20:00:51 +0000 UTC

显示有记录的最后一次飞行

  • 2

有一张火车时刻表:

create table atest (
TR_ID NUMBER(9),
TR_START DATE,
TR_END DATE,
TR_FROMSTART VARCHAR2(255),
TR_FROMEND VARCHAR2(255) )

TR_ID   TR_START              TR_END             TR_FROMSTART TR_FROMEND 
    1   01.06.2020 4:50:00    01.06.2020 7:50:00       MSK         KZN  
    1   01.06.2020 9:35:00    01.06.2020 13:00:00      КZN         ANP  
    2   03.06.2020 15:35:00   03.06.2020 18:30:00      MSK         SPB  
    2   05.06.2020 5:15:00    05.06.2020 10:30:00      SPB         MSK  
    3   05.06.2020 12:05:00   05.06.2020 12:05:00      MSK         NSB  
    3   08.06.2020 17:05:00   09.06.2020 1:50:00       NSB         MSK  
    1   10.06.2020 12:30:00   10.06.2020 16:00:00      ANP         KZN  
    1   12.06.2020 17:20:00   13.06.2020 5:35:00       KZN         MSK  
    2   15.06.2020 5:15:00    15.06.2020 10:30:00      MSK         ANP  
    2   15.06.2020 12:05:00   15.06.2020 17:50:00      ANP         KZN  

表中的列负责以下值:TR_ID- 火车 ID,TR_START и TR_END- 火车出发和到达时间,TR_FROMSTART и TR_FROMEND- 火车出发和到达点。

任务如下: 创建一个查询,将显示相同的列,但添加列有这列火车上一个航班的出发和到达时间,航班必须在前一天或更早。

应该发生的事情的一个例子:

      TR_ID  TR_START                TR_END             TR_FROMSTART TR_FROMEND       LASTRACE_ST 
            1   01.06.2020 4:50:00    01.06.2020 7:50:00       MSK         KZN             0  
            1   01.06.2020 9:35:00    01.06.2020 13:00:00      КZN         ANP           01.06.2020 4:50:00   
            2   03.06.2020 15:35:00   03.06.2020 18:30:00      MSK         SPB             0
            2   05.06.2020 5:15:00    05.06.2020 10:30:00      SPB         MSK           05.06.2020 5:15:00   
            3   05.06.2020 12:05:00   05.06.2020 12:05:00      MSK         NSB             0
            3   08.06.2020 17:05:00   09.06.2020 1:50:00       NSB         MSK           08.06.2020 17:05:00 
.................................................... и т.д.

尝试以多种方式完成任务,最接近的是NTH_VALUE:

select distinct  a.tr_id, trunc(a.tr_start), a.tr_fromstart, a.tr_fromend,
NTH_VALUE(a.tr_start, 2) OVER (PARTITION BY a.tr_id ORDER BY a.tr_start DESC RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) lastrace_st,
NTH_VALUE(a.tr_end, 2) OVER (PARTITION BY a.tr_id ORDER BY a.tr_start DESC RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) lastrace_end 
       from atest a
order by trunc(a.tr_start)

但是,数据选择不正确 - 整个火车上的倒数第二个行程被采取,而不是前一个。

sql
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2022-04-28 17:40:06 +0000 UTC

如何计算链中的记录数?

  • 2

我有一张旅客列车运动的简化表,显示了它从一个城市到另一个城市的运动:

create table testt (
    ID NUMBER,
    VALST VARCHAR2(255),
    VALEND VARCHAR2(255),
    NEXTID NUMBER
)

   ID VALST  VALEND NEXTID
----- ----- ------- ------
    1   MOS     SAN      2
    2   SAN     MOS      
    3   MOS     EKB      4
    4   EKB     RYA      5
    5   RYA     SAN      6
    6   SAN     MOS      
    7   MOS     KRA      8
    8   KRA     VOR      9
    9   VOR     MOS      

它的工作原理如下:单元格VALST显示火车从VALEND哪里出发,到达哪里。该单元格NEXTID包含下一个航班的 ID。也就是说,例如,根据 ID 1,火车会先从 MOS 开往 SAN,然后在 ID 2 下的下一趟行程中,它会从 SAN 开往 MOS,链条将在那里结束,因为没有下一个标识符。

问题如下:确定链中的行程次数,即火车何时离开MOS,最终返回MOS。

在上面的示例中,从 ID 1 开始,链大小为 2,从 ID 3 开始,链大小为 4。

我尝试使用 LEAD 功能,但不幸的是,它不起作用,请帮助。

sql
  • 2 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2021-12-24 15:34:11 +0000 UTC

Crystal Reports 按“浮动”小时对数据进行分组

  • 0

是这样一个问题。有一个包含火车时刻表数据的 SQL 表。它有两列 - rasp_date,负责火车的出发,和race_hours,表示这列火车到最终目的地的旅行时间。下面是这个表的一个例子:

RASP_DATE                  RACE_HOURS
01.10.2020 15:05:00        4
01.10.2020 15:35:00        3
01.10.2020 16:10:00        8
01.10.2020 16:25:00        6

有必要根据这些数据制定报告,计算每小时的总行程时间。例如,按照上面的示例,报告将显示从 15:00 到 16:00 的总行程时间为 7 小时,从 16:00 到 17:00 - 14 小时。使用分组可以轻松完成此任务。但是,任务有点不同 - 计算“浮动”小时内的旅行小时数。用户输入参数“时间分钟”(例如15),是5的倍数,现在“windows”应该不是从15:00到16:00计算,而是从15:15到16:15 ,从 17:15 到 18:15 等。很可能,为此您需要更改分组,但我不知道该怎么做。请,请指教。

sql
  • 2 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2021-11-12 15:07:34 +0000 UTC

如何在不考虑重复记录的情况下基于表创建视图?

  • 2

有一个ATEST数据表:

create table ATEST (
    id number (9),
    data1 varchar2 (255))

insert into atest values (1, 100);
insert into atest values (1, 100);
insert into atest values (2, 200);
insert into atest values (2, 200);
insert into atest values (3, 300);
insert into atest values (3, 300);

有必要基于此表创建一个V_ATEST没有重复(相同)数据的 VIEW,即其中只有三行:

ID  DATA1
--  -----
1   100
2   200
3   300

我找到了很多关于如何使用DELETEusing删除重复数据的提示rowid,但它不适合我,因为数据ATEST必须保留,并且数据需要输入新的数据VIEW。

告诉我怎么做?

sql
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-07-28 17:26:24 +0000 UTC

根据组数据将表拆分为两列

  • 1

我有一个包含一列的表格V_GROUP:

V_GROUP
------------------------------
1.1. Название группы 1  
1.1.1. Данные подгруппы 1   
1.1.2. Данные подгруппы 2   
1.1.3. Данные подгруппы 3   
1.2. Название группы 2  
1.2.1. Данные подгруппы 1 (2)   
1.2.2. Данные подгруппы 2 (2)   
1.2.3. Данные подгруппы 3 (3)

从此表中,您需要创建一个包含 2 列的视图(V_SUBGROUP, V_GROUP),以便左列具有子组,而右列具有子组,当然,正确的组与子组重合:

V_SUBGROUP                         V_GROUP
---------------------------------------------------------
1.1.1. Данные подгруппы 1       1.1. Название группы 1  
1.1.2. Данные подгруппы 2       1.1. Название группы 1  
1.1.3. Данные подгруппы 3       1.1. Название группы 1  
1.2.1. Данные подгруппы 1 (2)   1.2. Название группы 2
1.2.2. Данные подгруппы 2 (2)   1.2. Название группы 2
1.2.3. Данные подгруппы 3 (3)   1.2. Название группы 2
sql
  • 3 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-07-22 20:28:27 +0000 UTC

在视图中为具有 NULL 值的列选择数据的条件

  • 1

我有一个ATEST有两列的表QUESTS, COMMENTS:

QUESTS      COMMENTS
-------------------------------
Вопрос 1    Тут есть данные
Вопрос 2    
Вопрос 3    
Вопрос 4    И тут есть данные
Вопрос 5    

有必要根据这个表用一列来表示QUECOMM,其中应该有信息:

  • 如果COMMENTS有数据(不是NULL),则从ATEST.COMMENTS(原来是 1 和 4 行)输入数据
  • 如果COMMENTS没有数据(NULL),则取ATEST.QUESTS(2、3 和 5 行)。

也就是做一个简单的条件。如何在 SQL 中实现它?

sql
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-05-11 16:03:24 +0000 UTC

使用 Crystal Reports 中的复选框在是/否字段中显示信息

  • 0

我在 Crystal Reports 中显示一个表格,它有 3 列,其中布尔类型的信息可以是 1 或 0。我想以某种方式将这些 0 和 1 转换为图像,也就是说,有一个复选框,其中有如果值为 1,则为复选标记(或叉号),如果值为 0,则复选框为空。我听说这可以使用 OLE 对象来完成,但我不知道具体如何。请告诉我。

在此处输入图像描述

crystalreport
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-04-07 15:34:14 +0000 UTC

为什么SUBSTR四舍五入后取自字符串值的数字总和?

  • 2

我想将一行TAH_START (VARCHAR2)从小时:分钟的时间格式转换为数字 TAH_START_NUM (NUMBER(19))。

例如,08:56您需要想象如何08 + 56/60 = 8.93333333.

我试过这样:

UPDATE TEST_TABLE
SET TAH_START_NUM = substr(TAH_START, 1, 2) + (substr(TAH_START, 4, 2) / 60)

执行后,数据如下:

16:21   16
08:24   8
08:47   9
...
05:35   6

但是结果看起来不像预期的那样,我认为问题出在小写数字格式上。

sql
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-03-12 15:04:27 +0000 UTC

根据时间更改单元格中的日期

  • 0

继续这个问题: Converting a string with a number of given length to a time value

该表包含 6 列:

  • REG_ID- 标识符
  • DDATE- 活动日期
  • DTIME- 4位数字格式的事件时间
  • DTIMEUTC- 4 位数字格式的 UTC 事件时间
  • DT_LOCAL- 转换(以正常形式)事件的日期和时间
  • DT_UTC- 以 UTC 转换(以正常形式)事件的日期和时间

输入前 4 列中的数据。在最后两列中,使用我在上一个问题中提示的查询输入数据:

UPDATE ATEST
SET DT_LOCAL = "DDATE" || ' ' || SUBSTR(DTIME, 1, 2)|| ':' ||substr(DTIME, 3, 2)
WHERE REG_ID > 0

UPDATE ATEST
SET DT_UTC = "DDATE" || ' ' || SUBSTR(DTIMEUTC, 1, 2)|| ':' ||substr(DTIMEUTC, 3, 2)
WHERE REG_ID > 0

在此处输入图像描述

最后,一个问题。从查询和表格中可以看出,有时 UTC 时间会落在第二天,因此日期应该会改变。也就是说,根据示例,表中带有 UTC 时间的第二行应该已经是 01/03/2010,而不是 01/02/2010。如果与 DTIME 相比,DTIMEUTC 已经移到下一天,那么应该执行什么 SQL 查询以使 DT_UTC 字符串中的日期递增?
在此示例中,DT_UTC 中的数据并不完全正确,例如,第 1 行和第 2 行应包含第一个数字,因为第二个数字尚未到达 UTC。时间在 12 小时内变化。

我正在附加一个查询来创建一个表:

create table ATEST
(
  reg_id   NUMBER(19) not null,
  ddate    VARCHAR2(255),
  dtime    VARCHAR2(255),
  dt_local VARCHAR2(255),
  dt_utc   VARCHAR2(255),
  dtimeutc VARCHAR2(255)
)

insert into ATEST (reg_id, ddate, dtime, dt_local, dt_utc, dtimeutc)
values (1, '02.01.2010', '0125', '02.01.2010 01:25', '02.01.2010 22:25', '2225');
insert into ATEST (reg_id, ddate, dtime, dt_local, dt_utc, dtimeutc)
values (2, '02.01.2010', '0328', '02.01.2010 03:28', '02.01.2010 20:28', '2028');
insert into ATEST (reg_id, ddate, dtime, dt_local, dt_utc, dtimeutc)
values (3, '03.01.2010', '0645', '03.01.2010 06:45', '03.01.2010 02:45', '0245');
insert into ATEST (reg_id, ddate, dtime, dt_local, dt_utc, dtimeutc)
values (4, '03.01.2010', '1250', '03.01.2010 12:50', '03.01.2010 09:50', '0950');
insert into ATEST (reg_id, ddate, dtime, dt_local, dt_utc, dtimeutc)
values (5, '03.01.2010', '1845', '03.01.2010 18:45', '03.01.2010 15:45', '1545');
commit;
sql
  • 1 个回答
  • 10 Views
Martin Hope
Gipnomanul
Asked: 2020-03-05 20:32:18 +0000 UTC

将具有给定长度的字符串转换为时间值

  • 0

您需要将包含 4 位数字的字符串(例如,'0625')转换为“小时:分钟”格式的时间字符串(即'06:25'在本例中)。

该表具有内联列:

  • TIME4位数字
  • TIME2把结果放在哪里

我尝试使用 function TO_DATE,但以下示例给出了错误的结果:

UPDATE ATEST
SET TIME2 = TO_DATE("TIME", 'HH24:MI') 
WHERE ID > 0

在此处输入图像描述

sql
  • 2 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5