Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2009, 09:41   #1
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
Печаль соединение двух столбцов, имеющих схожие данные из разных таблиц

в-общем, вопрос нетривиальный.
если 2 таблицы, содержащие по 2000 записей.
нужно соедить столбцы с адресами. в одной таблице адрес записан как, к примеру, 9-я Советская, во второй Советская 9-я, т.е. записи могут быть написаны по-разному и возможны сокращения. вот, даже не представляю как это сделать.у кого какие идеи?
kate158 вне форума Ответить с цитированием
Старый 11.09.2009, 09:48   #2
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Оооо, сталкивался, знаю... )) Можно проверять строки на совпадение слов, однако это - не самый лучший вариант, т.к. очепятки и безграмотность пользователей никто не отменял...
В принципе - можете написать процедуру, которую я уже оговорил - стапроцентные результаты убираете/копируете сразу, а после к первой таблице цепляете вторую и делаете джойн с процедурой, который покажет записи со схожестью > 25% и тут ручками работаете.. 2000 записей - не такая уж большая цифра) Я так реализовывал.
Да, и кстати, а СУБД какая?
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума Ответить с цитированием
Старый 11.09.2009, 09:54   #3
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию

субд-MS SQL SERVER 2000
kate158 вне форума Ответить с цитированием
Старый 11.09.2009, 10:08   #4
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Ну вот и замечательно...
Пишите функцию, которая берет значение столбца первой таблицы (пусть будет значение "2я ярославская") и проверяет, есть ли записи во второй таблице, в которых 2 слова и одно из них - "2я", второе - "ярославская". Получите неплохой "суповой" набор данных.
Вторая процедура будет делать практически тоже самое, с одной разницей - она будет искать записи во второй таблице, где встречаются слова "2я" или "ярославская" посредством генерируемых в ходе выполнения запросов и возвращать вам строки, в которых искомые слова встречаются, вне зависимости от количества слов. На выходе у вас будет громоздкая табличка, которую руками можно будет перебрать очень и очень просто.

P.S. Данные, которые вы уже взяли из второй таблицы - лучше либо удалять, либо, если первое влечет за собой последствия, приводить данные к формату первой таблицы и отмечать, что строки уже синхронизированы (добавить поле bit), дабы не использовать их в последующем (ускорить процесс работы)
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сравнение двух столбцов в разных книгах LAnLorD Microsoft Office Excel 132 17.05.2022 08:16
Связать данные двух таблиц ZhK Microsoft Office Excel 5 03.09.2009 12:23
Помогите связать данные двух таблиц ZhK Microsoft Office Excel 47 27.08.2009 13:22
из двух разных таблиц в наименовании нужно выделить артикул повторяющийся в этих таблицах Екатерина Спирина Microsoft Office Excel 16 28.04.2009 01:07
обмен данными из двух таблиц (одинаковой структуры) но в разных базах Tanuska___:) БД в Delphi 1 26.11.2008 19:41