希望有人可以帮助...
我有两张桌子,里面有渔获量,并记录了每个垂钓者的个人最佳成绩。我现在所做的是在不断增长的列表中添加更多物种。
所以我现在已经备份了旧数据库(catches_old)并创建了一个新表(catchs)。
捕获量将所有物种设置为零。
提取唯一记录的唯一方法是同时使用 FishName 和 Angler。
我需要的是一段简单的代码来检查权重是否大于零,这意味着它有记录,然后我会用旧的详细信息更新记录。
我尝试了多种方法,但失败得很惨。
旧表(Specie、FishNm、Position、Fisherman、lb、oz、dr、Drams、PegName、Date)新表相同。
旧表包含 - 来自捕获的旧记录。新表基本上是对所有记录的重置,其中包含要捕获的附加鱼名。
新表包含所有鱼名并重置为 0 德拉姆。
旧表现在需要用过去捕获的捕获记录更新新表。旧表中仍未捕获的渔获物无需转移,只需旧渔获物即可。
样本数据 - (不准确的德拉姆计算哈哈)
Carp - Wobbles - 2 - David Williams - 12 - 4 - 6 - 897 - Willow Island - 21/05/1999
Carp - Fanta - 1 - David Williams - 14 - 7 - 9 - 900 - Bay of Dreams - 14/05/2004
Goldfish - Harry - 1 - Fred Ball - 1 - 1- 2 - 258 - Willow Island - 12/05/2010
Goldfish - Whipper - 2 - - 0 - 0- 0- 0- -
Goldfish - Harriet - 3 - David Williams - 0 - 15 - 2 - 251 - The Fair - 23/09/2012
新代码 - 对两个唯一字段使用内部连接。这个工作是否正常,因为它失败了?
UPDATE NewTable
INNER JOIN OldTable
ON NewTable.Fishname = OldTable.Fishname AND NewTable.Angler = OldTable.Angler
SET NewTable.Weight = OldTable.Weight