Size: a a a

2020 May 02

СИ

Сергей Иванов... in ru_mysql
да я пока не понимаю как к реальным таблицам применить
источник

СИ

Сергей Иванов... in ru_mysql
по моей ссылке таблицы готовые
источник

СИ

Сергей Иванов... in ru_mysql
с данными
источник

А

Александр in ru_mysql
Просто удалите декларации (WITH) в моём примере sens1 и sens2
источник

СИ

Сергей Иванов... in ru_mysql
пытаюсь н могу пока срастить :)
источник

СИ

Сергей Иванов... in ru_mysql
CREATE TABLE tb1 ( dt datetime,sens1 float);

INSERT INTO tb1 (dt,sens1) VALUES ('2020-05-02 10:00',123);
INSERT INTO tb1 (dt,sens1) VALUES ('2020-05-02 11:00',456);
INSERT INTO tb1 (dt,sens1) VALUES ('2020-05-02 12:00',789);

CREATE TABLE tb2 ( dt datetime,sens2 float);

INSERT INTO tb2 (dt,sens2) VALUES ('2020-05-02 10:30',111);
INSERT INTO tb2 (dt,sens2) VALUES ('2020-05-02 11:30',222);
INSERT INTO tb2 (dt,sens2) VALUES ('2020-05-02 12:30',333);
источник

СИ

Сергей Иванов... in ru_mysql
вот мои данные
источник

А

Александр in ru_mysql
WITH q AS (
 SELECT dt, v sens1, NULL sens2
 FROM sens1
 UNION ALL
 SELECT dt, NULL sens1, v sens2
 FROM sens2
)
, q2 AS (
 SELECT dt, sens1, sens2
 , SUM(IF(sens1 IS NOT NULL, 1, 0)) OVER (ORDER BY dt) gch1
 , SUM(IF(sens2 IS NOT NULL, 1, 0)) OVER (ORDER BY dt) gch2
 FROM q
 ORDER BY dt
)
, q3 AS (
 SELECT q2.*
 , MAX(sens1) OVER (PARTITION BY gch1) sens1_f
 , MAX(sens2) OVER (PARTITION BY gch2) sens2_f
 FROM q2
 ORDER BY dt
)
SELECT -- *
dt, sens1_f, sens2_f
FROM q3
источник

СИ

Сергей Иванов... in ru_mysql
источник

А

Александр in ru_mysql
Вы самое важное на принтскрине вырезали зачем-то
источник

А

Александр in ru_mysql
Сделайте полный принт скрин
источник

СИ

Сергей Иванов... in ru_mysql
источник

А

Александр in ru_mysql
Переключите версию на 8
источник

СИ

Сергей Иванов... in ru_mysql
у меня 5.7
источник

А

Александр in ru_mysql
В 5.7 это не будет работать
источник

СИ

Сергей Иванов... in ru_mysql
сменить не реально
источник

СИ

Сергей Иванов... in ru_mysql
а ну тогда жаль
источник

СИ

Сергей Иванов... in ru_mysql
set @s1:='';
set @s2:='';
select
dt,
if(s1='',@s1,@s1:=s1) s1,
if(s2='',@s2,@s2:=s2) s2

from

(select dt,sens1 as s1,'' as s2  from tb1
 union
select dt,'' as s1 ,sens2 as s2 from tb2)a
order by dt
;
источник

СИ

Сергей Иванов... in ru_mysql
вот решение у меня такое получилось
источник

СИ

Сергей Иванов... in ru_mysql
источник