我需要更新表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;

08-19 04:29