In Access 2013 I try to create a request to fill in the CP_ball field:

UPDATE Студент t1 SET t1.СР_балл = (SELECT AVG(Оценка) FROM Успеваемость t2 WHERE t2.ИН_Студ = t1.ИН_Студ) 

but all the time this error:

The operation must use an updated subquery.

  • Is the student a table or a saved query (view)? - msi
  • There all the tables, there is a query, called 'Performance Query' - Man

2 answers 2

 UPDATE Студент as t1 SET t1.СР_балл = ( SELECT AVG(Оценка) FROM Успеваемость as t2 WHERE t2.ИН_Студ = t1.ИН_Студ ) 

    Try this:

     UPDATE Студент t1 SET t1.СР_балл = AVG(t2.Оценка) FROM Успеваемость t2 WHERE t2.ИН_Студ = t1.ИН_Студ 
    • Syntax error (operator omitted) in query expression 'AVG (t2.Evaluation) FROM Progress t2' - Man
    • @Yura Suchko before AVG () put SELECT, i.e. UPDATE Student t1 SET t1.СР_bal = SELECT AVG (t2.Evaluation) FROM .... - namak7