【问题标题】:Appending data from one table to another将数据从一个表附加到另一个表
【发布时间】:2015-02-10 11:48:25
【问题描述】:

您好,提前感谢您的 cmets。我有一个名为 CRIMDATA 的数据库。在这两个名为 CRIM_PRODUCTION 的表和另一个名为 ABBREV 的表中。在 CRIM_PRODUCTION 中,有一列数据包含各种状态缩写,例如 _fl 和 _ga,所有 50 个状态都嵌入到名为 IMAGES 的列中的字符串中,例如 images/broward_fl/12345.jpg。

在 ABBREV 表中有一个名为 SCORE 的列,其中包含所有 50 个州的缩写(_fl、_ga 等)和一个邮政缩写列,该列名为 STATE,并具有适当的缩写,如 FL 和 GA对于那些带有下划线的缩写。

我想做的是生成一个脚本,该脚本查找并匹配 CRIM_PRODUCTION IMAGES 列中所有数据的出现,与 ABBREV SCORE 列匹配,并从相应的 STATE 列中获取数据并复制它到 CRIM_PRODUCTION 表并将其放入 CRIM_PRODUCTION 表中名为 SOURCESTATE 的另一列中。

提前谢谢大家...

【问题讨论】:

  • 请向我们展示您到目前为止所做的尝试。

标签: sql-server tsql


【解决方案1】:

表名和列名不可读。

这样检查,

SELECT STATE
FROM CRIM_PRODUCTION P
INNER JOIN ABBREV A ON P.IMAGES LIKE '%' + A.SCORE + '%'

那你可以这样试试,

MERGE CRIM_PRODUCTION AS TRG
USING (
    SELECT [STATE]
    FROM ABBREV
    ) AS SRC
    ON SRC.IMAGES LIKE '%' + TRG.SCORE + '%'
WHEN MATCHED
    THEN
        UPDATE
        SET SOURCESTATE = SRC.[STATE];

【讨论】:

  • Msg 4104, Level 16, State 1, Line 7 无法绑定多部分标识符“P.IMAGES”。消息 4104,级别 16,状态 1,第 7 行无法绑定多部分标识符“A.SCORE”。
猜你喜欢
  • 2010-10-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-18
  • 2019-02-02
  • 1970-01-01
  • 2020-02-02
相关资源
最近更新 更多