我有一张表,其中包含以下行: id、车辆、开始日期、结束日期
和一张包含以下行的表: 车辆、减速、加速、拐角、垂直、事件代码、事件日期。
我正在尝试创建一个新表,从这两个表中提取数据,其中每个表中的车辆相同,表2中的事件日期位于表1的开始日期和完成日期之间。
我有代码:
CREATE TABLE new_event_data SELECT * from table1, table2
where table1.vehicle=table2.vehicle
and table2.eventdate BETWEEN table1.start_date AND table1.finish_date
这会产生一个新的列: 减速、加速、角点、垂直、事件代码。 所有重复的列(例如车辆和事件日期列)都将被忽略。 是否有办法获取新日期中的日期,以便两个表中的数据可以关联? 我试图将事件分组到一张表中。 非常感谢您的帮助。
最佳答案
使用别名并指定选择查询中的所有列名称,如下所示--
这里,Table1别名是A,列A_C1是table1的第一个列名。
创建表 new_event_data 从表 1 A、表 2 B 中选择 A.A_C1,B.B_C1,...
其中A.车辆=B.车辆
和 B.eventdate 位于 A.start_date 和 B.finish_date 之间
关于mysql新表包含来自2个表的重复列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51077570/