您的位置首页百科问答

MYSQL update语句问题1

MYSQL update语句问题1

的有关信息介绍如下:

问题补充说明:题目是这个: UPDATE语句(利用一个表中的数据修改另外一个表中的数据)利用Part表中的零售价格来修改lineitem中的extendedprice,其中extendedprice=part.retailprice * quantity。然后我的代码是这个 UPDATE LINEITEM SET L_EXTENDEDPRICE=P_RETAILPRICE*L_QUANTITY FROM PART WHERE L_PARTKEY=P_PARTKEY;结果显示语法错误,但是语法没问题啊然后我又这样弄了UPDATE LINEITEMLEFT JOIN PART ON L_PARTKEY=P_PARTKEYSET L_EXTENDEDPRICE=P_RETAILPRICE*L_QUANTITY;这样根本就没有任何的反应,得按Ctrl C 才有反应,但是依旧不成功我之前是用了下面的代码成功了,但是现在也不行了,和上一个反应是一样的UPDATE LINEITEM AS L, PART AS PSET L_EXTENDEDPRICE=P_RETAILPRICE*L_QUANTITYWHERE L_PARTKEY=P_PARTKEY; 未成功上一次成功的图所以这到底是为什么???求大佬指导!!!

MYSQL update语句问题1

你去看下mysql来自update语法说明,信并送你的

UPDATELINEITE360问答M

 SETL_EXTENDEDPRICE=P_RETAILPRICE*L_QUANTITY

 FROMPART

 WHEREL_PARTKEY=P_PARTK斯二轻EY;

是错的,你一定要按标准的语法规则,不能想当然的(语法就是有问题)

单表语法(来自mysql5.7官网手册)

UPDATE[LOW_PRIORITY][IGNORE]table_reference

  SETassignment_list

  [W效县HEREwhere_cond干构转试英下永助换守ition]

  [ORDERBY...]

  [LIMITrow_count]

 

value:

  {expr使航范见作口帮|DEFAULT}

 

assignment:

  col_name=val报印ue

 

assignment_list:

  assignment[,assignm欢离承少率教品药ent]...

多表的:

UPDATE[LOW_PRIORITY][IGNO移社杨八承套得李RE]table_穿样班晚只座坐references

  SETassignment_list

  [WHEREwhere_condition]

除非条件中有组合款族查询,否则update中不可能有FROM的