![]() |
|
|
![]()
|
|
| _Nick_ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 21.11.2006 Репутация: нет Всего: нет |
У меня есть таблица tab.db, в ней поля zap1, zap2, zap31, zap32, zap4, zap5
как мне из этой таблицы удалить однаковые строки записей, например SQL запросом? Одинаковыми записями считать только те у которых значения во всех полях совпадут |
|||
|
||||
| belousov |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 317 Регистрация: 21.11.2006 Где: Москва Репутация: нет Всего: 6 |
_Nick_, а группировкой? она их просто скроет или именно удалять?
-------------------- NIHIL VERUM EST LICET OMNIA |
|||
|
||||
| _Nick_ |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 21.11.2006 Репутация: нет Всего: нет |
мне все равно как от них избавиться
Это сообщение отредактировал(а) _Nick_ - 9.8.2007, 17:08 |
|||
|
||||
| ALeXandrK |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Если тебе избавиться совсем, то
Если нужно только отображение, то
-------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
||||
|
|||||
| _Nick_ |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 21.11.2006 Репутация: нет Всего: нет |
Неработает, первый запрос вообще ничего не делает, а второй ошибку выдает на FROM в тексте ошибки ругаеться |
||||||
|
|||||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
C группировкой я поторопился.....
Держи удаление:
Проверено работает. После FROM нужно указывать название таблицы (как она у тебя называется известно только тебе). tab.db - это не название таблицы, а название базы. P.s.: надеюсь поля у тебя из одной таблицы Это сообщение отредактировал(а) ALeXandrK - 10.8.2007, 00:01 -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| Savek |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 355 Регистрация: 10.4.2006 Где: Воронеж Репутация: 7 Всего: 7 |
ALeXandrK, Твой запрос адалит записи в которых все поля равны, а автору похоже нужно удалить дубликаты записей т.е. несколько записей с одинаковыми значениями в соотв. полях.
Ждем подробностей от автора... |
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
А хоть ключик уникальный то есть в таблице? Если ключа нет то никак вы не сможете удалить дубликат записи запросом, оставив при этом "оригинал" записи
-------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 5 Всего: 44 |
если нет ключика то можно создать еще одно поле и проставить в него уникальные занчения тогда пример
Vas, будет работать. еще как вариант: перенести уникальные записи в другую таблицу:
затем удалить все записи из старой таблицы и перенести данные в старую таблицу из новой, новую удалить. имхо первое проше. если база парадокс то как раз таки таблица, а базой для парадокс является папка в которой валяются db-файлы Это сообщение отредактировал(а) DimW - 10.8.2007, 12:13 |
|||
|
||||
| ALeXandrK |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Уже давно с парадокс не работал... совсем забыл об этом
Ни все поля, а только указанные в запросе. Автор уже написал, что ему нужно...
-------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
||||||||
|
|||||||||
| _Nick_ |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 21.11.2006 Репутация: нет Всего: нет |
еще как вариант:
перенести уникальные записи в другую таблицу:
Так не работало, выдавало ошибку смудрил вот так:
Работает, но тупо переносит все записи из одной базы в другую, грубо говоря копирует, и все без всяких изменений, хотя поидее должно было лишее не переносить, мож я чет не так делаю??? ALeXandrK, я имел ввиду, одинаковыми записями считать если все поля 1 записи полностью совпадают с такими же полями 2 записи Если с переносом без повторов ничего не получиться, придеться попробовать то что предложил DimW |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |