我需要更新表A,但结果来自表B。
下面是我的表结果
表A
年初至今的基金代码
ABC 123.456
表B
年初至今的基金代码
美国广播公司234.777
备注:
表B中的FundCode需要删除点后的字符。
UPDATE table A
SET YTD =t2.YTD
from table B t2
WHERE t2.FundCode = t1.FundCode
我不知道如何只在前面得到子串
我需要的结果是
表A
年初至今的基金代码
ABC 234.777
最佳答案
您可以在join
语句中使用update
UPDATE a
JOIN b ON SUBSTRING_INDEX(SUBSTRING_INDEX(b.FundCode, '.', 1), '.', -1) = a.FundCode
SET a.YTD=b.YTD;