这是我的表格当前的设置方式:

Dataset
 |
 - Dataset_Id - Int
 |
 - Timestamp - Timestamp

Flowrate
 |
 -Flowrate_id - int
 |
 -Dataset_id - ALL NULL (INT)
 |
 -TimeStamp - TimeStamp
 |
 -FlowRate - FLoat


我想更新流速dataset_id列,以便其id对应于数据集dataset_ids。数据集表有近40万行。...如何做到这一点,以免花费太久。这些数据来自不同的数据记录器,这就是为什么我需要将它们与它们的时间戳联系起来。

最佳答案

UPDATE
  Flowrate JOIN Dataset ON (Flowrate.TimeStamp = Dataset.Timestamp)
  SET Flowrate.Dataset_id = Dataset.Dataset_Id


当然完全独立于Python(在这里放了什么奇怪的标签-好像MySql关心您用来向它发送固定SQL语句的语言是什么?)。当然,只有在正确索引表的情况下,它将很快。

如果有人在列名的随机位置上使用小写或大写,那么显然“想”是相同的,那么您的架构中绝对奇怪的大写不规则性BTW会让我感到非常讨厌。尽管如此,我还是试图精确地再现它,但是我希望您重新考虑这个荒谬的样式选择。

10-08 18:16