select A.GEO_COORDINATE_RID , B.GEO_COORDINATE_RID
from FAC_FACILITY as A
right join SYS_GEO_COORDINATE as B
on A.CREATED_DATE= B.CREATED_DATE
where B.CREATED_BY = 'EPDMIG'上面的select语句给出340个结果,但是当我试图在update语句中使用时(下面),它会给出0的结果
update A
set A. GEO_COORDINATE_RID = B.GEO_COORDINATE_RID
from FAC_FACILITY as A
right join SYS_GEO_COORDINATE as B
on A.CREATED_DATE= B.CREATED_DATE
where B.CREATED_BY = 'EPDMIG'来自GEO_COORDIANTE _RID的sys_GEO_COORDIANTE是FAC_FACILITY表上的FK
update语句中是否缺少任何内容?
发布于 2015-11-04 01:29:07
您有一个正确的联接,这意味着不可能有与A匹配的行,有多少A.GEO_COORDINATE_RID为null?所有的人?如果你只做了一个连接,有行回来吗?
第二项,如果CREATED_DATE是一个DateTime,那么它们必须匹配到毫秒。不知道你在做什么,但如果你只关心这一天,你可以像下面这样加入。但话虽如此,在create_date上加入通常是不可能的。你应该加入GEO_COORDINATE_RID吗?
select A.GEO_COORDINATE_RID , B.GEO_COORDINATE_RID
from FAC_FACILITY as A
join SYS_GEO_COORDINATE as B
on CAST(A.CREATED_DATE AS DATE) = CAST(B.CREATED_DATE AS DATE)
where B.CREATED_BY = 'EPDMIG'https://stackoverflow.com/questions/33510110
复制相似问题