我有一条记录,我想用另一个表中相同字段的数据更新字段。问题是查找表包含重复的记录,所以我只想从第一个匹配的记录中提取数据。
这是我现在所拥有的,但是我收到了这个错误:
太多的值
我的查询是:
UPDATE T_TABLE1 T1
SET T1.UPDATEFIELD = (SELECT DISTINCT(T2.itemtag), MAX(T2.UPDATEFIELD)
FROM T_TABLE2 T2
WHERE T2.ITEMTAG = T1.ITEMTAG
GROUP BY T2.itemtag)
答案 0 :(得分:2)
这个怎么样:
UPDATE T_TABLE1 T1
SET T1.UPDATEFIELD = (SELECT MAX(T2.UPDATEFIELD)
FROM T_TABLE2 T2
WHERE T2.ITEMTAG = T1.ITEMTAG
GROUP BY T2.itemtag)
答案 1 :(得分:0)
您正在选择导致问题的两列;
UPDATE T_TABLE1 T1
SET T1.UPDATEFIELD = (SELECT MAX(T2.UPDATEFIELD)
FROM T_TABLE2 T2
WHERE T2.ITEMTAG = T1.ITEMTAG
GROUP BY T2.itemtag)
希望得到这个帮助。