Я новичок в SQL и все еще учусь.
Как только я сделал операции над таблицей (скажем, таблицей 1), чтобы получить представление. Как мне перевести / преобразовать / сохранить это представление в новую постоянную таблицу (таблица 2)? Кроме того, возможно ли сохранить его в той же таблице (таблица 1)?
Мой код выглядит примерно так:
select `Date`, `Close Price`,
round(avg(`Close Price`) over (order by `date` asc rows 19 preceding), 2)
as '20 Day MA'
from table1; -- this is my view
тогда я бы хотел table1 или новую таблицу для хранения этого представления (столбцы
дата, цена закрытия, 20 дней ма )
в основном,
Старый стол: дата, цена закрытия
Новая таблица: дата, цена закрытия, 20_day_ma
Возможно, проще просто добавить новый столбец 20_day_ma , но я не знаю, как добавить новые значения, которые зависят от других столбцов.
редактирование:
Так что просто попробовал это:
DELIMITER $$
-- create table1
drop table if exists table1;
create table table1 as
select STR_TO_DATE(`Date`, '%d-%M-%Y') as `Date`, `Close Price`,
round(avg(`Close Price`) over (order by `date` asc rows 19 preceding), 2) as
'20 Day MA'
from source_table $$
DELIMITER ;
И я постоянно получаю сообщение об ошибке: Команды не синхронизированы