SELECT A,
(SELECT max(B) FROM table_b WHERE B <= table_a.A) as low_bound,
(SELECT min(B) FROM table_b WHERE B >= table_a.A) as upper_bound
FROM table_a
字符串 第二个选项可以是创建CTE并使用LAG,如下所示:
WITH cte AS (
SELECT B AS b1, LAG(B) OVER (ORDER BY B ASC) AS b2 FROM table_b
)
SELECT * FROM cte INNER JOIN table_a ON (a <= b1 AND a >= b2)
1条答案
按热度按时间nwnhqdif1#
试试这个:
字符串
第二个选项可以是创建CTE并使用LAG,如下所示:
型
在公共表表达式中,您将得到两个数字,B和前面的B。
对于
B = 12
,你得到B1 = 12
和B2 = 6
,接下来的数字也是如此。然后,使用INNER JOIN,您将使用这些数字之间的A将它们连接起来。