Re: [SQL ] UPDATE 用法?
※ 引述《dcplay01 (dcplay)》之銘言:
: 各位大大...想說 放在新的資料表一值都不行的話..
: 那我就只好放在舊的資料表上了@@
: 還是遇到問題..
: UPDATE joinclass SET liberal_grade = avg( grade )
: FROM JoinClass
: WHERE course_id
: LIKE "%l" OR course_id
: LIKE "%a" OR course_id
: LIKE "%n" OR course_id
: LIKE "%p" AND stu_id =93101163
: 錯誤訊息
: #1064 - You have an error in your SQL syntax.
: Check the manual that corresponds to your MySQL server version
: for the right syntax to use near
: 'FROM JoinClass WHERE course_id LIKE "%l" OR course_id LIKE "%
: 可是假如我把彙總函數 AVG 去除掉的話 就可以RUN.. 但是我是想計算平均..
: 沒有彙總函數....就不能計算@@
AVG 不是要用 GROUP BY 併用?
UPDATE 可以跟 SELECT 併用
你要 UPDATE 的 table 跟 SELECT 應該是有一個鍵值關聯吧?
然後 SELECT 的平均應該是有某一個鍵值做 GROUP 的依據再平均
譬如學號
所以 某個學生的 所有分數平均 =
SELECT AVG(分數) FROM 成績 GROUP BY 學號
UPDATE 總成績 SET 平均分數 = (SELECT AVG(分數) FROM 成績
WHERE 成績.學號 = 總成績.學號 GROUP BY 成績.學號)
這是你想做的嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.80.137.188
討論串 (同標題文章)