1

这就是我需要更新来做的事情:

  • 使用用户编辑的 TIME 值更新我的汇总表 TIME 列
  • 比较新的 TIME,使用我的汇总表和 hour_interval 表中的 ID 来连接表
  • 找到新 TIME 所在的正确行 ID(有两列有开始和结束时间;例如:开始列 - 04:00:00 结束列 06:00:00)
  • 使用汇总表 ID 使用正确的间隔行 ID 更新汇总表

代码执行,但不更新间隔 ID。建议?

UPDATE summary S  
JOIN hour_interval H  
ON S.hourinterval_id = H.hourinterval_id 
SET S.hourinterval_id = H.hourinterval_id 
WHERE ('$new_time' BETWEEN H.start_hour AND H.end_hour) 
AND summary_id = '$summary_id'"


hourinterval_id start_hour  end_hour
1               4:00:00 5:59:59
2               6:00:00 7:59:59
3               8:00:00 9:59:59
4              10:00:00 11:59:59
5              12:00:00 13:59:59
6              14:00:00 15:59:59
7              16:00:00 17:59:59
8              18:00:00 19:59:59
4

1 回答 1

1

尝试这个:

UPDATE summary S  
JOIN hour_interval H  
ON '$new_time' BETWEEN H.start_hour AND H.end_hour
SET S.hourinterval_id = H.hourinterval_id 
WHERE summary_id = '$summary_id'"
于 2012-11-14T16:16:02.440 回答