Python 从多参数SQL查询插入数据
我有一个具有以下参数的机器设置数据库: 外径外径|内径内径|功率|速度|停留时间 使用新材质尺寸时,我希望从最接近的值插值设置,以最小化我需要对新材质进行的调整Python 从多参数SQL查询插入数据,python,database,sqlite,interpolation,pyodbc,Python,Database,Sqlite,Interpolation,Pyodbc,我有一个具有以下参数的机器设置数据库: 外径外径|内径内径|功率|速度|停留时间 使用新材质尺寸时,我希望从最接近的值插值设置,以最小化我需要对新材质进行的调整 给定数据库中不存在的OD和ID,查询数据库中最接近的值>和
给定数据库中不存在的OD和ID,查询数据库中最接近的值>和
SELECT * FROM settings ORDER BY my_distance_calculation(od, id, :given_od, :given_id) LIMIT 1;
我的距离计算不必是一个函数。它可以是数据库方言中的任何有效表达式。例如,这仅使用每个参数与其给定值的绝对差之和:
SELECT * FROM settings ORDER BY ABS(od - :given_od) + ABS(id - :given_id) LIMIT 1;
SQLite没有内置的幂函数,但如果有,则可以计算欧几里德距离:
SELECT * FROM settings ORDER BY POW(POW(od - :given_id, 2) + POW(id - :given_id, 2), 0.5) LIMIT 1;
你自己试过什么吗?开始的代码?Best是主观的。正如@Jared的回答所暗示的,您可能应该与了解相关机器的人交谈,以了解用于计算接近度的函数。根据机器执行的操作,OD可能比ID重要得多,反之亦然。