【发布时间】:2016-10-11 18:20:42
【问题描述】:
我正在尝试使用另外两个创建一个新表。我想在合并“值”列时创建所有记录组合的记录。我想要另一列告诉我值的来源 像这样。:
答:
Day Month Random1 Random2 value1
01 Jan AA XX 12
24 Mar BB YY 34
13 Feb CC ZZ 7
乙:
Day Month value2
03 Jan 16
24 Mar 2
我试图在日和月加入它们,但是如果没有行匹配,我希望它创建一个包含所有组合的行。
我想要一张如下表:
C:
Day Month Random1 Random2 value Type
01 Jan AA XX 12 value1
24 Mar BB YY 34 value1
13 Feb CC ZZ 7 value1
03 Jan AA XX 16 value2
03 Jan AA YY 16 value2
03 Jan AA ZZ 16 value2
03 Jan BB XX 16 value2
03 Jan BB YY 16 value2
03 Jan BB ZZ 16 value2
03 Jan CC XX 16 value2
03 Jan CC YY 16 value2
03 Jan CC ZZ 16 value2
24 Mar AA XX 2 value2
24 Mar AA YY 2 value2
24 Mar AA ZZ 2 value2
24 Mar BB XX 2 value2
24 Mar BB YY 2 value2
24 Mar BB ZZ 2 value2
24 Mar CC XX 2 value2
24 Mar CC YY 2 value2
24 Mar CC ZZ 2 value2
我的 sql 查询异常复杂,我确信有一种简单的方法可以做到这一点。
(我实际上是使用sqldf() 在 R 中编写此查询,我正在寻找 sql 建议,但我愿意接受替代方案。)
【问题讨论】:
-
您在寻找 sql 解决方案还是 R?
-
如果您尝试在 sql 中执行此操作,请查看游标和记录。我认为这可以帮助你。
-
@akrun,我正在寻找一个 sql 解决方案,因为我希望它高效,但我对 R 解决方案持开放态度。