Home  >  Article  >  Backend Development  >  MYSQL语句有关问题

MYSQL语句有关问题

WBOY
WBOYOriginal
2016-06-13 13:38:43876browse

MYSQL语句问题?

SQL code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->UPDATE 
(
SELECT  WorkID,
WK.PpjID,
WD.CheckupPoint,
WD.AdjustPoint,
WD.FactPoint,
 WE.IsSpecial,
 WK.WorkType,
 WK.WorkStatus 
  FROM `Work` WK  LEFT JOIN WorkDesign WD ON WK.WorkID=WD.Work_id
LEFT JOIN WorkEditionDot WE ON WE.EditionDotID=WE.EditionDotID WHERE `WK`.WorkID IN
(SELECT `W`.WorkID   FROM `Work` W WHERE  W.PpjID=18035 AND (`W`.WorkStatus='已出稿' OR `W`.WorkStatus='已定稿')))   
 SET  WD.CheckupPoint=WD.AdjustPoint+WD.FactPoint WHERE  WK.PpjID=18035
报错;Every derived table must have its own alias该如何解决(别名问题)?

------解决方案--------------------
Every derived table must have its own alias
每一个派生表必须有自己的别名



UPDATE 
(
SELECT WorkID,
WK.PpjID,
WD.CheckupPoint,
WD.AdjustPoint,
WD.FactPoint,
WE.IsSpecial,
WK.WorkType,
WK.WorkStatus
FROM `Work` WK LEFT JOIN WorkDesign WD ON WK.WorkID=WD.Work_id
LEFT JOIN WorkEditionDot WE ON WE.EditionDotID=WE.EditionDotID WHERE `WK`.WorkID IN
(SELECT `W`.WorkID FROM `Work` W WHERE W.PpjID=18035 AND (`W`.WorkStatus='已出稿' OR `W`.WorkStatus='已定稿')))
SET WD.CheckupPoint=WD.AdjustPoint+WD.FactPoint WHERE WK.PpjID=18035
红色的部分就是一个派生表,需要有别名
被修改的是查询结果,你这样能修改成功吗?
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn