powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Поиск аналогов запчастей
15 сообщений из 40, страница 2 из 2
Поиск аналогов запчастей
    #39054769
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVУважаемый автортаблица - "Аналоги" (id запчасти, id запчасти аналог) - подчиненная таблица, так сказать, ничего

осталось выяснить, кто запчасть, а кто аналог. :)И из какого источника и на каком основании брать информацию.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055039
shemik7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSV,

Проблема еще в том, что нужная какая-то сводная таблица, в которой будут отображаться группы запчастей, которые так скажем все подходят (взаимозаменяемы, аналоги). Допустим у нас имеется определенная запчасть, и мы хотим увидеть, какие еще запчасти могут подойти. И эта запчасть не обязательно является оригиналом или аналогом.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055050
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shemik7нужная какая-то сводная таблица, в которой будут отображаться группы запчастей, которые так скажем все подходят (взаимозаменяемы, аналоги)Не нужна, если будет опираться на номера.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055061
shemik7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

Да, я и имел в виду ту самую таблицу "Аналоги".
Просто если искать по левому идентификатору, то да, мы получим группу. А как поступать в случае с правым тогда? Учитывая такую вещь например, что мы не знаем, искомый идентификатор находится справа или слева.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055081
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shemik7miksoft,

Да, я и имел в виду ту самую таблицу "Аналоги".
Просто если искать по левому идентификатору, то да, мы получим группу. А как поступать в случае с правым тогда? Учитывая такую вещь например, что мы не знаем, искомый идентификатор находится справа или слева.Храните двусторонние связи в виде двух записей (прямой и обратной) в этой таблице. Т.е. фактически это будет таблиц замен - что на что можно заменить.

Хотя в очередной раз повторяю - если ориентироваться на оригинальные номера, то и эта таблица аналогов станет не нужна. В принципе таблицу замен реализовать можно, но ее очень тяжело поддерживать в будущем при мало-мальски приличных объемах.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055098
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shemik7А как поступать в случае с правым тогда?
Выкинуть. Оставить только левые.
Код: sql
1.
CREATE TABLE ANA_GROUPS (AAA INTEGER, DETAIL_ID INTEGER);


Код: sql
1.
2.
select detail_id from ana_groups where aaa=(select aaa from ana_groups where 
detail_id=:id)


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055128
shemik7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Огромное спасибо!
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055156
Я проходил этот вопрос в кач-ве заказчика. Замены могут быть в рамках одного производителя и разных. Замена может быть односторонняя, двухсторонняя, единицы на группу, группы на единицу, с доп. работой и может еще что-то забыл. Надо понимать цель работы. Заказчику надо определиться с бизнес-ограничением. Если надо подгружать прайсы и остатки поставщиков, то надо принять к сведению, что у них могут быть разные названия одних производителей. Надо сводить наименования производителей. Имеет место, особенно в Поволжье, выдумывание номенклатуры. Для автоматики загрузки надо привязывать определенные строчки из остатков к готовым спискам. Это ОЧЕНЬ серьезная работа. Я бы рекомендовал взять готовые решения, заточенные на автобизнес.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055277
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Дубков... Я бы рекомендовал взять готовые решения, заточенные на автобизнес.
Автор не ищет легких решений. К тому же это стопудово не боевая задача.
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39055398
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shemik7Имеется таблица с запчастями. Нужно создать таблицу аналогов запчастей. Вопрос в том, как правильно организовать это дело, чтобы не дублировать информацию в таблицах и при поиске аналогов выводить список их всех? (К примеру есть запчасть с id = 1 и id = 2, в таблице аналогов стоит соответствие 1 и 2... как сделать так, чтобы не дублировать запись вида 2 и 1 и при этом искать аналоги независимо от порядка расположения id)


PART( part_id => part_name, f1,f2,f3 ...)
PART_ANALOGUE(part_id, analogue_part_id)
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39062441
MUSYAKA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
занимаюсь похожей задачей )
1 нужна предварительная обработка поискового запроса (для уменьшения массива переборки идентификаторов), т.е. это убрать пробелы, черточки, точки , заменить кирилицу на латиницу (у меня запчасти импортные)
2 создать базу данных для поиска
тут два пути - создание "жесткой" базы и потом вечное ее обслуживание (дополнение поправляние и т.д. ( а это будет каждый день, и тут либо туда на работу идти ,либо заказчик недоволен)
- создание оболочки +админка простенькая, которая позволит править ошибки и подгружать новые записи в БД
на мой взгляд второй вариант приемлимее. потому как не существует в природе полных и корректных баз аналогов запчастей, кроме того , как правило, компания специализируется на конкретных производителях и это и будет основа БД.
3 структура БД
эталонный идентификатор и к нему массив аналогов (поверьте массив будет состоять точно не из одного ID, у меня количество доходит до 50шт и постоянно добавляется. именно поэтому и удобно сделать редактируемый вариант массива переборки)
Ну тут вопрос, а какой ID будет эталонным? Эталон у нас - это и есть запчасти от конкретных поставщиков, с которыми работает компания. если же таковых не имеется, то придется БД увеличить на количество записей из массива переборки (то есть в моем варианте в 50 раз!) и тут вы зацените предварительную обработку поискового запроса - пункт 1
-----
например, есть такой производитель MAN (грузовики делает), одна из деталей этого грузовика -ПГУ. его аналоги 9700514120, 9700514127, 81307256092, 630361AM, SG4804, 81307256084, 2250249, TT0713064, 22000033, 05011412, BK1202078AS, 23F142, 341203, 630361AM, 35898, 81307259084, 81307256085, 81307256107, 81307256116
это уже обработанные номера, изначально они выглядели чуть не так 970 051 412 0 , 81.30725.6092, 81.30725-6092 и т.д.
если не "привести" всех к единому виду, то все эти номера нужно тоже поместить в массив переборки + полезно было бы и раскладку клавы исправлять и русские буквы латинскими заменять

а что эталонный ID ? Пусть мы работает с производителем TTT, тогда наш эталон TT0713064 (в оригинале , кстати, TT07.13.064), а все остальные номера массив переборки. До и еще, я же не сказала что на один вопрос может быть больше одного ответа, т.е. результат поиска - это более одного эталонного идентификатора )))


P.S. хорошо бы все это еще и картинками сдобрить, в общем действительно такой себе филиал TECDOCа
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39062446
MUSYAKA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ой, а я сказала что таблицы должен предоставить заказчик?
а они у него есть?
а в каком виде?
поверьте опытной тете- на это уходит львиная доля времени, потому как если они и есть, то в таком виде что их еще в порядок приводить нужно (причем долгооооооо)
поэтому наличие админки - просто находка, иначе задергают. Пусть сами занимаются забивкой аналогов
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39062504
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MUSYAKAубрать пробелы, черточки, точки , заменить кирилицу на латиницуТочнее, убрать все символы, отличающиеся от букв и цифр, привести к верхнему регистру, заменить кириллицу на латиницу со схожим написанием, заменить все виды буквы "О" на цифру "0", заменить кириллическую "З" на цифру 3.
Иногда еще нужно заменить букву "l" на цифру "1".
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39062636
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MUSYAKA,

может нечто по принципу Одноклассников

есть друзья
1--1ф
2--1ф
2--2ф
3--2ф

видим общих друзей 1ф и 2ф
получаем возможную группу
1

2

3
...
Рейтинг: 0 / 0
Поиск аналогов запчастей
    #39063903
MUSYAKA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКАMUSYAKA,

может нечто по принципу Одноклассников

есть друзья
1--1ф
2--1ф
2--2ф
3--2ф

видим общих друзей 1ф и 2ф
получаем возможную группу
1

2

3

так и не так, тут другая специфика. на выходе нужно получить конкретный ответ, а не все связи. в моем понимании структуры поиск ведется по всем 1, 1ф,2,2ф ... , НО результат поиска , например, 1


а вот то что получается (выводится как результат поиска) зависит от требований заказчика. это могут быть списки только тех номеров, товар по которым лежит на складе (или доступен к заказу). если действительно вываливать абсолютно все соответствия, то это уже гораздо бОльший объем базы (а есть ли в такой объеме смысл?), т.е. в любом случае нужно знать поставленную задачу.

Это кстати в облегченном виде решение. я не копаю в замены (это не аналоги, которые нужно понимать как реплики оригинала), в комплектующие (если деталь имеет ремкомплекты), и к ним тоже аналоги и т.д.
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Поиск аналогов запчастей
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]