Форум: "Базы";
Текущий архив: 2002.10.17;
Скачать: [xml.tar.bz2];
ВнизУбрать дубли Найти похожие ветки
← →
Oxy2 (2002-09-25 12:00) [0]Привет, всем!
Вобщем такая трабла. Есть справочник улиц следующего содержания
1 Ленина
2 Сталина
3 Ленина
.........
Какой надо сделать SQL-запрос что бы убрать дубль (1 Ленина и 3 Ленина). Тоесть надо оставить только одну улицу 1 Ленина.
Пожалуйста помогите.
← →
ЮЮ (2002-09-25 12:05) [1]Одним запросом тут не отделаешься. Ведь ещё надо править записи в таблицах, которые ссылаются на этот справочник. А править записи запросом в парадоксе иногда бывает чревато, т.к. записи могут перезаписаться с новым автоинкрементом.
← →
NP-237 (2002-09-25 12:07) [2]Посмотрите, будет интересно.
http://www.sql.ru/forum/actualthread.aspx?bid=1&tid=10671
← →
passm (2002-09-25 12:07) [3]Цифры - это уникальное поле или часть названия улицы?
← →
Oxy2 (2002-09-25 12:08) [4]Нет мне не надо править ссылки из других таблиц. Надо только исправить саму таблицу. Мне нужен тольо текст SQL-запроса, так как сам написать его я не знаю. Я новичок в БД.
← →
Oxy2 (2002-09-25 12:08) [5]Цифры это уникальное поле.
← →
passm (2002-09-25 12:11) [6]В твоем случае придется править ссылки в других таблицах, либо оставить все как есть.
← →
Anatoly Podgoretsky (2002-09-25 12:12) [7]ЮЮ © (25.09.02 12:05)
О каком Парадоксе речь, dBase, FoxPro
Oxy2 (25.09.02 12:00)
Вот это тот случай когда не желательно использование запроса, убрать легче с помощью TTable если есть индекс по этому полю, если нет, то временно сделать.
Потом ты не достаточно привел данных, нет информации по связи справочника с другими таблиуами, возможно придется также корректировать ссылки.
← →
Oxy2 (2002-09-25 12:15) [8]Нету связи справочника с другими таблицами. Это просто отдельная таблица и все. Ее потом будут использовать в одной проге. Мне надо только подготовить ее к этому.
← →
Oxy2 (2002-09-25 12:21) [9]А насчет ТТейбл, то я знаю как сделать это перебором, но хотелось бы чтоб SQL-сервер это все сделал за меня. ;-))
На то его и сделали что бы другим легче было.
← →
Johnmen (2002-09-25 12:26) [10]Можно попробовать
DELETE FROM Tbl T1
WHERE T1.ID>(SELECT MIN(T2.ID) FROM Tbl T2 WHERE T1.name=T2.name)
← →
ЮЮ (2002-09-25 12:33) [11]dBase, FoxPro - это ещё не SQL-сервер. Синтаксис локального SQL сильно ограничен. Можно создать еще одну такую же таблицу, пустую,с автоинкрементным полем, и выбрать в неё запросом, не возвращающим дубли
← →
Oxy2 (2002-09-25 12:37) [12]Короче, работаю в Делфе 5 с ее БДЕ. Думаю, там возможностей вполне хватает.
2 Johnmen
Спасибо, вроде помогло.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.10.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c