选择游标还是直接在数据库中运算?

1,今天为了数据抽取形式做了测试,Python通过odbc做游标在sqlserver上抽取数据集,比sqlserver慢了近一倍,我想问问,这是为什么?我初步猜测是内存压缩要占用时间
2,为了最大限度的降低服务器压力,我想从服务器数据库中提取最基本的数据,然后在本地Python中运算完毕后再把结果发回,我想问问各位数据分析师一般是怎么处理这个事情的。
3,使用Python做计算分析平台还需要注意哪些事情呢?当然我知道sqlserver自带分析功能。

阅读 4.1k
3 个回答

少量用游标算,大量用服务器算,毕竟服务器计算能力比Python快

能用SQL语句解决的问题、尽量不用存储过程

游标相当于是循环处理,可能没有使用关系数据的join效率高,如果数据量大,那么差别可不是一点点的问题,甚至几十倍,上百倍都可能
比如你更新1000条数据,一次执行1秒,那么更新完就是1000秒
但是如果用一个SQL统一跟新可能2,3秒就完成

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题