内部联接与更新SQL语句抛出错误

时间:2018-04-18 04:04:53

标签: sql

我正在编写一个SQL语句,它为更新内连接提供了错误。

这是查询:

UPDATE trackedentitydatavalue tedv 
INNER JOIN dataelement de ON tedv.dataelementid = de.dataelementid 
SET tedv.value = tedv.value + '_CNCD' 
WHERE de.valuetype = 'TEXT' 
  AND de.optionsetid IS NOT NULL 
  AND RIGHT(tedv.value, 4) != 'CNCD' 

我收到此错误:

  

错误:语法错误在或附近" INNER"
  第1行:更新trackedentitydatavalue tedv INNER JOIN dataelement de

3 个答案:

答案 0 :(得分:0)

试试这个解决方案:

UPDATE trackedentitydatavalue AS tedv
SET value = value+'_CNCD'  
FROM dataelement de 
WHERE tedv.dataelementid=de.dataelementid
AND de.valuetype='TEXT' 
AND  de.optionsetid is NOT NULL 
AND  RIGHT(tedv.value,4)!='CNCD' 

答案 1 :(得分:0)

使用此原型

update ud u
inner join sale s on
    u.id = s.udid
set u.assid = s.assid

答案 2 :(得分:0)

请试试这个

UPDATE trackedentitydatavalue tedv 
INNER JOIN dataelement de 
ON tedv.dataelementid = de.dataelementid 
SET tedv.value = concat(tedv.value, '_CNCD') 
WHERE de.valuetype = 'TEXT' 
AND de.optionsetid IS NOT NULL 
AND RIGHT(tedv.value, 4) != 'CNCD'