如何根据十进制列连接两个表?

How to join two tables based on a decimal column?

我发现其他帖子中有人询问有关使用小数列加入 sql table 的问题,一般答案是“尽量避免”。但在这种情况下,我只需要在十进制列上使用某种连接(模糊连接?):

我有两个 table,每个都有多个列和不同的行数。

Table A 有 1000 行。 Table B 有 10 行。

每个 table 也有一个列表示从时间零开始的时间计数,作为一个小时的小数部分。例如,值 1.5 表示时间 0 之后的一个半小时。小数点后最多可以有 5 位数字(或更少)。

我想对十进制列进行外部模糊连接,以便 Table B 中的每一行都与 Table A 中最近的时间点对齐。

有什么实现方法吗?

你可以试试这样的

Select * From Table a
inner join Table b 
on Abs(b.column - a.column) < 0.0000000001

查找列值中的最小差异。您可以定义小数零的长度