簡體   English   中英

mysql存儲過程更新查詢

[英]mysql stored procedure update query

我正在處理存儲過程,但無法使其創建工作。 自測試過以來,我知道我的sql代碼正在運行,但是我不知道為什么我無法使它運行。

CREATE TEMPORARY TABLE IF NOT EXISTS table2 AS (
select AVG(Score) as aScore, MovieCode
from UserMovies
group by MovieCode
)

UPDATE Movies
set Score =(
select aScore
from table2
where Movies.Code=table2.MovieCode )

DROP TABLE IF EXISTS table2

它不會讓我創建存儲過程。 在代碼的更新部分附近說錯誤。

通常,這樣的事情應該起作用:

DELIMITER //

DROP PROCEDURE IF EXISTS `sp_Name`//

CREATE PROCEDURE `sp_Name`()
BEGIN
  CREATE TEMPORARY TABLE IF NOT EXISTS table2 AS (
  select AVG(Score) as aScore, MovieCode
  from UserMovies
  group by MovieCode
  );

  UPDATE Movies
  set Score = (
  select aScore
  from table2
  where Movies.Code=table2.MovieCode );

  DROP TABLE IF EXISTS table2;
END//

DELIMITER ;

SQL Fiddle演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM