Я новичок в программировании на PL \ SQL, и я из ДБА. У меня есть одно требование удалить данные как из основной таблицы, так и из справочной таблицы, но при удалении данных необходимо следовать приведенной ниже логике c, поскольку нам необходимо удалить 30 М данных из таблиц, поэтому мы сокращаем данные на основе столбца «State_ID» ниже.
Следующие условия необходимо учитывать 1. В соответствии с данными выборки, приведенными ниже (основная таблица), сортируйте данные на основе метки времени с порядком des c и оставляйте первые 2 строки данных для каждого «State_id» и удалите оставшиеся данные из обеих таблиц на основе столбца «state_id». 2. выберите state_id, count () из группы maintable по порядку state_id по отметке времени des c Имеет count ()> 2;
Так что если у state_id = 1 есть 5 строк, то он должен удалите 3 строки данных, оставив первые 2 строки для state_id = 1, и повторите для других значений state_id.
Также из справочной таблицы должны быть удалены те же самые совпадающие данные.
Пожалуйста, помогите кому-нибудь меня по этому вопросу. Спасибо.
введите описание изображения здесь
Основной стол