Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Удаление одинаковых записей внутри одного стобца  [new]
Сергей_00001
Member

Откуда:
Сообщений: 9
Добрый день, помогите новичку, суть задачи следующая есть табличка, состоящая из одного столбца - список телефонных номеров (около 50 млн записей) и необходимо удалить повторяющиеся значения.
Заранее спасибо!
17 фев 15, 09:54    [17274861]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
iap
Member

Откуда: Москва
Сообщений: 46999
Сергей_00001
Удаление одинаковых записей внутри одного стобца
1. Внутри столбца не может быть никаких записей!
2. Где скрипт создания таблицы?
17 фев 15, 09:57    [17274867]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
with cte as (select n =row_number()over(patrtition by НОМЕР ТЕЛЕФОНА order by ОН ЖЕ) from ВАША ТАБЛИЦА)
delete forn cte where N> 1

Где-то так,если не у вас действительно все именно так
17 фев 15, 10:06    [17274901]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
Сергей_00001
Member

Откуда:
Сообщений: 9
табличку создал так: create table INFO (nomera varchar(128), vremya varchar(128)) , собственно все, потом сюда загрузил список номеров с помощью SQl*Loader-a:

LOAD DATA

INFILE '1.csv'

INTO TABLE INFO

FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS

(nomera, vremya)

Поле - vremya значения не имеет, пришлось его создать т.к. исходный файл (1.csv) содержит 2 столбца и можно было грузить лоадером

Весь смысл задачи был в том что есть файл .csv который содержит 50млн строк (Уникальных значений примерно 10млн и необходимо получить этот список) и ничем другим его открыть не получается, в итоге получил такую табличку.
Уникальных значений примерно 10млн
17 фев 15, 10:45    [17275111]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
Glory
Member

Откуда:
Сообщений: 104760
Сергей_00001
LOAD DATA

INFILE '1.csv'

INTO TABLE INFO

FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS

А вы разницу между Microsoft SQL Server и другими серверами понимаете ?
17 фев 15, 10:46    [17275123]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
Добрый Э - Эх
Guest
Сергей_00001,

Подключай свой файл как внешнюю таблицу и делай простой select distinct ... Если требуется вставка в таблицу, то + insert. Или сразу create table as select distinct from<внешняя таблица>

И да. Про оракл ветка чуть ниже.
17 фев 15, 11:08    [17275276]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4248
Сергей_00001
Добрый день, помогите новичку, суть задачи следующая есть табличка, состоящая из одного столбца - список телефонных номеров (около 50 млн записей) и необходимо удалить повторяющиеся значения.
Заранее спасибо!

1. Используя DISTINCT выбрать во временную таблицу уникальные значения.
2. Удалить в исходной таблице все записи.
3. Скопировать из временной таблицы в исходную все записи.
4. Удалить временную таблицу.
17 фев 15, 11:13    [17275297]     Ответить | Цитировать Сообщить модератору
 Re: Удаление одинаковых записей внутри одного стобца  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4248
Забыл упомянуть... Если номера заведены в базу абы как, то вначале привести их к общему формату,
и лишь после этого проводить вышеописанные мероприятия.
17 фев 15, 11:15    [17275303]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить