UPDATE UPDATETEST2 SET UPDATETEST2.NAME1 = NAME FROM UPDATETEST2 U2, UPDATETEST1 U1 WHERE U2.ID1 = U1.ID1 试试
没错就是有重复纪录,我改用这样 UPDATE UPDATETEST2 SET NAME1 = (select max(NAME) FROM UPDATETEST2 U2, UPDATETEST1 U1 WHERE U2.ID1 = U1.ID1); 可以,但是关联条件没有作用,返回的值都是相同的,哎interbase太弱了!
你试一下 UPDATE UPDATETEST2 SET NAME1 = UPDATETEST1.NAME FROM UPDATETEST2 U2 [inner] join UPDATETEST1 U1 on U2.ID1 = U1.ID1
辛苦一下, 把 JazzLover 的sQL 中的 别名 去掉, 不用那玩意试试
zhuzhichao(竹之草),你的where clause有问题,没关联当前正在update的表。UPDATE UPDATETEST2 U2 SET NAME1 = (select max(NAME) From UPDATETEST1 U1 WHERE U2.ID1 = U1.ID1); 祝你好运!
对不起,刚才的写法是对的,但是对查询不利,应该如下: UPDATE UPDATETEST2 U2 SET NAME1 = (Select Max(NAME) From UPDATETEST1 U1 Where U1.ID1 = U2.ID1);
FROM UPDATETEST2 U2, UPDATETEST1 U1
WHERE U2.ID1 = U1.ID1
试试
UPDATE UPDATETEST2 SET NAME1 =
(select max(NAME) FROM UPDATETEST2 U2, UPDATETEST1 U1
WHERE U2.ID1 = U1.ID1);
可以,但是关联条件没有作用,返回的值都是相同的,哎interbase太弱了!
UPDATE UPDATETEST2 SET NAME1 = UPDATETEST1.NAME
FROM UPDATETEST2 U2 [inner] join UPDATETEST1 U1
on U2.ID1 = U1.ID1
(select max(NAME) From UPDATETEST1 U1
WHERE U2.ID1 = U1.ID1); 祝你好运!
UPDATE UPDATETEST2 U2
SET NAME1 = (Select Max(NAME)
From UPDATETEST1 U1
Where U1.ID1 = U2.ID1);