WITH 表达式 接 UPDATE出错 ,求教

sonnchuui520 2014-08-13 11:47:05
WITH RECURSIVE SAIKI(scene_cd_parent, scene_cd, sortnumber, kai) AS (
SELECT
a.scene_cd_parent
,a.scene_cd
,a.sortnumber * 1000 ^ 10 AS sortnumber
,1 AS kai
FROM m_m0_sale_area a
WHERE a.client_corp_cd = /*pmb.ClientCorpCd*/'01'
AND /*pmb.KeijoD*/'20140501' BETWEEN a.apply_ymd_start AND a.apply_ymd_end
AND a.scene_cd_parent = /*pmb.SceneCd*/'0000001001'
UNION all
SELECT
b.scene_cd_parent
,a.scene_cd
,b.sortnumber + a.sortnumber * 1000 ^ (10 - b.kai) AS sortnumber
,b.kai + 1 AS kai
FROM SAIKI b
LEFT JOIN m_m0_sale_area a
ON /*pmb.KeijoD*/'20140501' BETWEEN a.apply_ymd_start AND a.apply_ymd_end
AND a.client_corp_cd = /*pmb.ClientCorpCd*/'01'
AND b.scene_cd = a.scene_cd_parent
WHERE a.client_corp_cd NOTNULL
)
UPDATE H SET H.FIX_KBN_NEXTTIME = '41',H.FIX_KBN_TEIKI_NEXTTIME = '41'
FROM d_h0_fix AS H
INNER JOIN SAIKI AS E
ON E.scene_cd = H.scene_cd AND H.client_corp_cd ='01' AND H.keijo_d BETWEEN '20140501' AND '20140531'


报错信息:
[Err] ERROR: "UPDATE"またはその近辺で構文エラー
LINE 24: UPDATE H SET H.FIX_KBN_NEXTTIME = '41',H.FIX_KBN_TEIKI_NEXTT...
...全文
355 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Err] ERROR: "UPDATE"またはその近辺で構文エラー jap...
trainee 2014-08-13
  • 打赏
  • 举报
回复
又错了

......
UPDATE d_h0_fix AS H SET FIX_KBN_NEXTTIME = '41',FIX_KBN_TEIKI_NEXTTIME = '41'
from  SAIKI AS E
where  E.scene_cd = H.scene_cd AND H.client_corp_cd ='01' AND H.keijo_d BETWEEN '20140501' AND '20140531'
trainee 2014-08-13
  • 打赏
  • 举报
回复
应该和with没关系, 你的update 语句有两个错误 update H... FROM H -- 重复了表 update H set H.字段 -- H. 必须去掉,set 后面不能跟被更新表的别名

......
UPDATE d_h0_fix AS H SET FIX_KBN_NEXTTIME = '41',FIX_KBN_TEIKI_NEXTTIME = '41'
INNER JOIN SAIKI AS E
ON E.scene_cd = H.scene_cd AND H.client_corp_cd ='01' AND H.keijo_d BETWEEN '20140501' AND '20140531'

956

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧