У меня есть большая таблица DBF в ADS, которая может содержать повторяющиеся записи. Дублирующаяся запись идентифицируется любой записью, в которой field2, field3, field5, field4, field8 и field7 соответствуют другой записи. Мне нужно определить повторяющиеся записи и удалить их. Для этого я пытаюсь записать набор записей во вторую таблицу. Несмотря на то, что повторяющаяся запись идентифицируется шестью полями, мне нужно записать всю запись, 30 полей, во вторую таблицу. Я пробовал следующий код:
insert into table2 select * from table1 where (
field2, field3, field5, field4, field8, field7
) in (
select field2, field3, field5, field4, field8, field7
from table1 where field3 not like '%FOO%' and field3 not like '%BOO%'
group by field2, field3, field5, field4, field8, field7 having count(*) > 1
)
Сообщение об ошибке ADS: ОШИБКА В СЦЕНАРИИ: poQuery: Ошибка 7200: Ошибка AQE: Состояние = 42000; Нативеррор = 2115; [Решения iAnywhere][Advantage SQL Engine]Ожидаемый лексический элемент не найден:) Возникла проблема при синтаксическом анализе предложения WHERE в операторе SELECT.
Любая помощь приветствуется.