【发布时间】:2012-07-20 15:15:12
【问题描述】:
我有两张桌子,即。 Total_Data 和 Distinct_S1。
Total_Data 有 350 万行。字段:“S1”、“S2”、“S3”、“S4”
Distinct_S1 有 100 万行。字段:“S1”、“频率”。 Distinct_S1 的“S1”由 Total_Data 的“S1”中出现的所有不同值组成。
手头的任务: S1 = 'xxyy' 的 Distinct_S1 的“频率”(假设)应包含 Total_Data 中出现 'xxyy' 的次数。
我在 python 脚本(导入 MySQLdb)中使用了以下查询来完成手头的任务:
cur.execute("update Distinct_S1 set frequency=(select count(*) from Total_Data where S1='%s') where S1='%s'"%(S1_val, S1_val)
上述查询工作正常,但似乎需要很多时间。有没有其他更快的方法来达到同样的效果?
【问题讨论】:
标签: mysql mysql-python frequency-distribution large-data