Я хочу взять данные текущего дня из трех таблиц в SQL-сервере.Я не могу присоединиться к столам с TIMESTAMP
, TIMESTAMP
отличается в каждой таблице.Нет единого фактора для объединения этих таблиц.Есть ли способ присоединиться к этим таблицам.Кроме того, я не могу изменить таблицы, полученные из сторонних сервисов.
Запросы:
SELECT *
FROM table1
WHERE CAST(TIMESTAMP AS DATE) = CAST(GETDATE() AS DATE)
ORDER BY CAST(TIMESTAMP AS DATETIME2(0))
SELECT *
FROM table2
WHERE CAST(TIMESTAMP AS DATE) = CAST(GETDATE() AS DATE)
ORDER BY CAST(TIMESTAMP AS DATETIME2(0))
SELECT *
FROM table3
WHERE CAST(TIMESTAMP AS DATE) = CAST(GETDATE() AS DATE)
ORDER BY CAST(TIMESTAMP AS DATETIME2(0))
SELECT
CAST(one.TIMESTAMP AS DATETIME2(0)) AS DATE,
CONVERT(DECIMAL(10, 2), one.value) AS v1,
CONVERT(DECIMAL(10, 2), two.VALUE) AS v2,
CONVERT(DECIMAL(10, 2), three.VALUE) AS v3
FROM
table1 one
LEFT JOIN
table2 two ON CAST(one.TIMESTAMP AS DATETIME2(0)) = CAST(two.TIMESTAMP AS DATETIME2(0))
LEFT JOIN
table3 three ON CAST(one.TIMESTAMP AS DATETIME2(0)) = CAST(three.TIMESTAMP AS DATETIME2(0))
WHERE
CAST(one.TIMESTAMP AS DATE) = CAST(GETDATE() AS DATE)
ORDER BY
CAST(one.TIMESTAMP AS DATETIME2(0))
Результат:
Я не получил данные 2-й и 3-й таблиц.Например: 2018-12-30 00:00:15.657
на этот раз из первой строки третьей таблицы.Это не показывает в результате.Я хочу все данные.
Надеюсь, вы понимаете.Не могли бы вы помочь мне решить эту проблему.