В настоящее время я запускаю базу данных SQLBase и пытался сделать несколько, чтобы выбрать и удалить повторяющиеся элементы.Удаление дубликатов на SQLBase
Вот сценарий:
Tablename: test1
||=========||=========||==================||
|| column1 || column2 || rowid ||
||=========||=========||==================||
|| 1 || 1 || AAAAAAAAAAAAAAAA ||
|| 1 || 1 || BBBBBBBBBBBBBBBB ||
|| 1 || 1 || CCCCCCCCCCCCCCCC ||
|| 1 || 2 || DDDDDDDDDDDDDDDD ||
|| 1 || 2 || EEEEEEEEEEEEEEEE ||
|| 1 || 3 || FFFFFFFFFFFFFFFF ||
|| 1 || 4 || GGGGGGGGGGGGGGGG ||
||=========||=========||==================||
RowID представляет собой виртуальный столбец. Это создается системой.
То, что я хочу сделать, это удалить все дубликаты, так что я в конечном итоге с:
||=========||=========||==================||
|| column1 || column2 || rowid ||
||=========||=========||==================||
|| 1 || 1 || AAAAAAAAAAAAAAAA ||
|| 1 || 2 || DDDDDDDDDDDDDDDD ||
|| 1 || 3 || FFFFFFFFFFFFFFFF ||
|| 1 || 4 || GGGGGGGGGGGGGGGG ||
||=========||=========||==================||
Проблема в том, его в SQLBase и нет никакой функции, которая перебирает мои дубликаты.
я найти дубликаты, как:
SELECT column1, column2 COUNT(*)
FROM test1
GROUP BY column1, column2
HAVING COUNT(*) > 1;
И есть моя проблема. Невозможно найти способ удалить их с этой точки. Также я, очевидно, не могу добавить rowid
к дубликатному выбору из-за инструкции group by
.
Есть ли возможность удалить дубликаты, поэтому имеется только одна запись из каждой комбинации из column1
и column2
?
Это верно, если я хотел бы создать программка, чем это было бы в случае решить эту проблему. Но так как нет возможности сделать это в существующей программе, я должен справиться с этим, просто используя sqltalk. Можете ли вы узнать, как использовать хранимые процедуры в sqltalk? – Dwza
Я добавил пример процедуры хранения, см. Выше. Это можно запустить в SqlTalk. Попробуй. – ZephyCZ
Я должен попробовать это завтра. SqlTalk поддерживает функции Centura? Кстати, на самом деле нет необходимости совершать с подготовкой и исполнением. – Dwza