Я пытаюсь обновить среднюю оценку, добавив к ней некоторое значение.Обновить значение avg в таблице
Моя таблица признанного студента содержит (NOSTUDENT, COURSECODE, SEMESTER, NOGROUPE, MARK) Колонны.
My View: AverageByGroupe содержит среднее значение баллов студентов, следующих за этим курсом, в соответствующем семестре.
CREATE OR REPLACE VIEW AverageByGroup AS
SELECT COURSCODE, NOGROUPE, SEMESTER, AVG(MARK) AS AVGMARK
FROM ADMITED_TABLE GROUP BY COURSECODE,NOGROUPE,SEMESTER;
Вопрос: Я хочу, чтобы обновить среднюю оценку для данного курса, группы семестра по 10, но AVGMARK это внимание, столбец, то, что он правильный синтаксис UPDATE.
То, что я пробовал:
UPDATE ADMITED_TABLE
SET AVG(MARK) = SELECT((AVG(MARK) + 10)
FROM ADMITED_TABLE WHERE COURSCODE = 'AAAA'
AND NOGROUP = 2
AND SEMESTER = 'AUTMN');
Error:
Error de command ligne: 2 Column: 8
Rapport of error -
Erreur SQL : ORA-00927: missing equal sign
00927. 00000 - "missing equal sign"
*Cause:
*Action:
Редактировать: Чтобы быть более ясным, что это таблица мутировать так, что я хочу использовать это ВМЕСТО ВСТАВИТЬ TRIGGER Wich огонь каждый раз, среднее значение оценивается путем корректировки этого курса.
Для выбора синтаксической ошибки, я включил выбрать в (
UPDATE ADMITED_TABLE
SET AVG(MARK) = (SELECT (AVG(MARK) + 10)
FROM ADMITED_TABLE WHERE COURSCODE = 'AAAA'
AND NOGROUP = 2
AND SEMESTER = 'AUTMN');
Ошибка:
ORA-00927: missing equal sign
00927. 00000 - "missing equal sign"
*Cause:
*Action:
вы пытаетесь обновить среднее значение столбца в таблице, которая не является возможным. –
У вас есть синтаксическая ошибка - в скобках должен быть выбран SELECT. Можете ли вы опубликовать, какую ошибку вы получите после фиксации? –
Это невозможно, это представление, вы не можете напрямую изменить значение из этого представления, если только вы не напишите все выбранные столбцы в новую таблицу. Затем выполните следующий запрос, который я вам дал. (У вас также есть некоторые синтаксические ошибки в вашем запросе) – LONG