【发布时间】:2017-04-04 14:24:39
【问题描述】:
这是我的表架构:
mysql> describe stocks;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| symbol | varchar(32) | NO | | NULL | |
| date | datetime | NO | | NULL | |
| value | float(10,3) | NO | | NULL | |
| contracts | int(8) | NO | | NULL | |
| open | float(10,3) | NO | | NULL | |
| close | float(10,3) | NO | | NULL | |
| high | float(10,3) | NO | | NULL | |
| low | float(10,3) | NO | | NULL | |
+-----------+-------------+------+-----+---------+----------------+
9 rows in set (0.00 sec)
我添加了两个名为 high 和 low 的新列,因此它们现在是空的。
我的目标是用基于每天的相对 max(value),min(value) 填充这些列!
我的第一个见解是这个查询:
select distinct DATE(date),max(value) as max,min(value) as min from stocks GROUP BY DATE(date);
...
| 2017-02-20 | 19130.000 | 18875.000 |
| 2017-02-21 | 19170.000 | 18780.000 |
| 2017-02-22 | 19125.000 | 18745.000 |
| 2017-02-23 | 18980.000 | 18765.000 |
| 2017-02-24 | 18840.000 | 18505.000 |
+------------+-----------+-----------+
实现第一步,现在我应该将这些结果与每一行连接起来:
| 900363 | FIB7C | 2017-02-20 17:49:44 | 18930.000 | 1 | 0.000 | 0.000 | 0.000 | 0.000 |
并根据 DATE(date) 插入正确的值,但我仍然无法理解 INSERT INTO。 感谢您的帮助。
【问题讨论】:
标签: mysql sql select insert-into