我是SQL新手,我遇到了一个复杂的问题。
我的表 T2 包含start_date
和end_date
两个时间戳。表 T1 包含时间戳ts和值v。
我想在T2中使用成对的时间戳来从这对日期之间的T1获得值v。我尝试了类似下面的东西,但它不起作用。我很感激你帮我指出这个问题。
select
v,
circle_ts
from t1
where circle_ts between start_ts
and end_ts in (
select
start_ts,
end_ts
from t2
where meter_id = 10)
答案 0 :(得分:3)
您可以选择JOIN
两个表并搜索日期之间的值。
SELECT DISTINCT a.v, a.circle_ts
FROM t1 a
INNER JOIN t2 b
ON a.circle_ts BETWEEN b.start_ts AND b.end_ts
WHERE b.meter_id = 10