Выборка и группировка данных путем сравнения времени

0

Проблема:

У меня 4 таблицы A, B, C и D.

Каждая таблица имеет одинаковые поля: id, date, price.

Я использую внутреннее соединение, чтобы показать цену каждого продукта A, B, C и D на дату x, используя:

  SELECT
  products.A.date as date,
  products.A.price as A_Price,
  products.B.price as B_Price,
  products.C.price as C_Price,
  products.D.price as D_Price

  FROM products.A

  INNER JOIN products.B ON products.B.date = products.A.date
  INNER JOIN products.C ON products.C.date = products.A.date
  INNER JOIN products.D ON products.D.date = products.A.date;

Тем не менее, я также хотел бы показать, какие цены каждого продукта были после 1 часа х даты.

Например:

Изображение 174551

  • 0
    У вас есть строка ровно через час после каждой даты / времени?
  • 0
    Дайте таблицу данных для четкого представления вопроса .. Я думаю, что вам нужно применить концепцию самостоятельного соединения ..
Показать ещё 8 комментариев
Теги:

1 ответ

0
Лучший ответ
SELECT A1.date as ActualDate, A1.price as A_price, A2.price as A_afterOnehr,
B1.price as B_price, B2.price as B_afterOnehr
FROM productA A1 
INNER JOIN productA A2 ON date_add(A1.date, INTERVAL 1 hour) = A2.date
INNER JOIN productB B1 
ON A1.date=B1.date INNER JOIN productB B2
ON  date_add(B1.date, INTERVAL 1 hour) = B2.date   

Это таблица A и Same для B в качестве примера...

Изображение 174551

Это результат

Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню