2
我期待通过平均距离该行之后最近的id和最近的id的日期来更新date
列为NULL
的行。用于平均缺失日期的MySQL
在下面的数据,这将更新ID 26
行是2011-10-19
什么MySQL的声明将做到这一点?
其他注意事项:
的数据看起来是这样的:
id date title
--------------------------------------------
12 2011-09-01 Example One
23 2011-10-02 Example Two
26 NULL Example Three
27 2011-11-05 Example Four
29 2012-01-05 Example Five
37 NULL Example Six
38 2012-02-03 Example Seven
--------------------------------------------
我宁愿不使用的过程。
到目前为止,我已经有了...
UPDATE `table`
SET `date`=
(AVG(
(SELECT `date` FROM `table` WHERE `id`< ID_OF_PARENT_QUERY AND `date` IS NOT NULL LIMIT 1),
(SELECT `date` FROM `table` WHERE `id`> ID_OF_PARENT_QUERY AND `date` IS NOT NULL LIMIT 1)
))
WHERE `date` IS NULL
你可以有多个连续的'NULL'值吗?如果是这样的话,你会如何继续? – 2012-04-09 06:23:07
@MostyMostacho - 是的。我想找到最接近的行(通过唯一的ID),在那里设置了“日期”值。 – DesignerGuy 2012-04-09 06:24:45