我有多个数据源。经过多次转型后,我结束了这样的事情:
StationId: Id integer
OriginDate: Datetime (i.e. 2011-04-25 16:53:26.623)
我已将此组件转换为将年份,月份和日期分开,这样做:
(DT_I2)YEAR(OriginDate)
和使用MONTH(OriginDate)
和Day的月份相同。
另一方面,我也有时间使用(DT_DBTIME)OriginDate
我进行了这些转换,因为我认为它们对我的问题可能有用,但不确定。
此数据源来自MSSQL
CurrentDate (i.e. 01/04/2011)
StationId: Integer
Hour (i.e. 01:59)
请注意,在此ds中,这两个字段都是varchar。
此数据源来自MySQL
我需要的是通过相同的stationId
(简单)和最接近的日期(不容易)加入这两个数据集。我应该为Datasource1中的每一行获取其他数据源中最接近时间的行,我的意思是,对于相同的Date,最接近的时间。这是因为datasource2是给定时间的度量,datasource1是给定时间的事件,我需要关联它们。
我怎样才能做到这一点? Merge join component
仅允许通过equals表达式连接。如果可能的话,我想避免分期。
我考虑将两个数据源的小时和分钟分开并进行比较,并比较日期和stationId中的相等性,但我不确定如何完成第一部分。
我对此采取了哪种方法。