如何在各列中找到最接近的数字?

吴家N

我有这张桌子:

col_1 | col_2 | col_3 | compare
------+-------+-------+--------
 1.1  | 2.1   | 3.1   | 2
------+-------+-------+--------
 10   | 9     | 1     | 15

我想派生一个新的列选择,指示最接近比较值的列:

col_1 | col_2 | col_3 | compare | choice
------+-------+-------+---------+-------
 1.1  | 2.1   | 3.1   | 2       | col_2
------+-------+-------+---------+-------
 10   | 9     | 1     | 15      | col_1

选择是指单元格值最接近比较值的列。

戈登·利诺夫

我认为最简单的方法是apply

select t.*, v.which as choice
from t cross apply
     (select top (1) v.*
      from (values ('col_1', col_1), ('col_2', col_2), ('col_3', col_3)
           ) v(which, val)
      order by abs(v.val - t.compare)
     ) v;

如果发生平局,则返回任意最接近的列。

您也可以使用case表达式,但这变得很复杂。没有NULL值:

select t.*,
       (case when abs(compare - col_1) <= abs(compare - col_3) and
                  abs(compare - col_1) <= abs(compare - col_3)
             then 'col_1'
             when abs(compare - col_2) <= abs(compare - col_3)
             then 'col_2'
             else 'col_3'
         end) as choice
from t;

如果发生平局,则返回第一列。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在 Python 中找到最接近数字的值?

来自分类常见问题

如何在熊猫列/系列中找到最接近输入数字的值?

来自分类Dev

如何在熊猫列/系列中找到最接近输入数字的值?

来自分类Dev

如何在数组中找到最接近给定数字的值?

来自分类Dev

如何在数组中找到与整数和数字之间的两个最接近的差

来自分类Dev

如何在java中找到最接近零的五个输入数字

来自分类Dev

从向量中找到最接近的数字索引

来自分类Dev

如何在api函数中找到最接近的tr

来自分类Dev

如何在Google地图中找到最接近的坐标

来自分类Dev

如何在api函数中找到最接近的tr

来自分类Dev

如何在3维数组中找到最接近的数组

来自分类Dev

在列pandas中找到最接近的值

来自分类Dev

从列中找到最接近的值,并从相邻列中返回数字(在列表内)

来自分类Dev

JavaScript在数组中找到最接近的数字

来自分类Dev

从n个数字的总和中找到最接近的n

来自分类Dev

如何在矩形的周长中找到最接近给定点的点?

来自分类Dev

如何在Matlab中找到最接近给定时间值的时间值

来自分类Dev

如何在矩形的周长中找到最接近给定点的点?

来自分类Dev

如何在php中找到最接近某个字符的html标签?

来自分类Dev

如何在javascript对象中找到最接近的下限和上限值?

来自分类Dev

如何在字典中找到最接近但不超过变量的值的键?

来自分类Dev

如何在数组角度 6 中找到最接近的较低值?

来自分类Dev

如何在左侧找到最接近的值

来自分类Dev

如何在距x的距离处找到与给定数字最接近的n个数字?

来自分类Dev

如何在距x的距离处找到与给定数字最接近的n个数字?

来自分类Dev

根据条件在列中找到最接近的时间戳

来自分类Dev

Python / Pandas在一列中找到最接近/最接近的值

来自分类Dev

Python / Pandas在一列中找到最接近/最接近的值

来自分类Dev

R-如何从相异矩阵中找到最接近的邻居?

Related 相关文章

  1. 1

    如何在 Python 中找到最接近数字的值?

  2. 2

    如何在熊猫列/系列中找到最接近输入数字的值?

  3. 3

    如何在熊猫列/系列中找到最接近输入数字的值?

  4. 4

    如何在数组中找到最接近给定数字的值?

  5. 5

    如何在数组中找到与整数和数字之间的两个最接近的差

  6. 6

    如何在java中找到最接近零的五个输入数字

  7. 7

    从向量中找到最接近的数字索引

  8. 8

    如何在api函数中找到最接近的tr

  9. 9

    如何在Google地图中找到最接近的坐标

  10. 10

    如何在api函数中找到最接近的tr

  11. 11

    如何在3维数组中找到最接近的数组

  12. 12

    在列pandas中找到最接近的值

  13. 13

    从列中找到最接近的值,并从相邻列中返回数字(在列表内)

  14. 14

    JavaScript在数组中找到最接近的数字

  15. 15

    从n个数字的总和中找到最接近的n

  16. 16

    如何在矩形的周长中找到最接近给定点的点?

  17. 17

    如何在Matlab中找到最接近给定时间值的时间值

  18. 18

    如何在矩形的周长中找到最接近给定点的点?

  19. 19

    如何在php中找到最接近某个字符的html标签?

  20. 20

    如何在javascript对象中找到最接近的下限和上限值?

  21. 21

    如何在字典中找到最接近但不超过变量的值的键?

  22. 22

    如何在数组角度 6 中找到最接近的较低值?

  23. 23

    如何在左侧找到最接近的值

  24. 24

    如何在距x的距离处找到与给定数字最接近的n个数字?

  25. 25

    如何在距x的距离处找到与给定数字最接近的n个数字?

  26. 26

    根据条件在列中找到最接近的时间戳

  27. 27

    Python / Pandas在一列中找到最接近/最接近的值

  28. 28

    Python / Pandas在一列中找到最接近/最接近的值

  29. 29

    R-如何从相异矩阵中找到最接近的邻居?

热门标签

归档