0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
1

Поиск по нужным полям

09.07.2017, 09:34. Показов 1117. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача стоит в том что есть таблица
И нужно осуществить поиск с выбором таблицы и нужного поля
При импорте новой таблицы обновляло как и выбор таблицы так и возможные поля
Заранее спасибо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.07.2017, 09:34
Ответы с готовыми решениями:

Поиск по нескольким полям
по одному полю поиск сделал нужно что бы еще по двум трем полям можно было искать.

Поиск по всем полям
Здравствуйте. Раньше вел базу таблицу в excel, но сейчас хочу перейти на Access, т.к. думаю больше...

Поиск по нескольким полям
Добрый день, столкнулся с дилеммой, не знаю как решить. Суть, делаю поиск по нескольким полям,...

Поиск по нескольким полям
Вот сделал базу по примеру.... И вроде при выбора номера должно показывать результат поиска, но...

13
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
09.07.2017, 09:45 2
Постановка задачи недостаточно информативная. Откуда берется новая таблица? Из Excel, из скл-сервера, текстового файла, другой БД Access? Для выбора варианта обновления это имеет решающее значение.
И что из себя представляет поиск? По одному полю, по нескольким? Поиск точный или неточный (Like). Словом, для обоснованного ответа надо прояснять ситуацию.

Возможно лучшим решением было бы выложить БД и источник новой таблицы на форум. Разумеется с пояснениями
0
Эксперт MS Access
17485 / 7247 / 1651
Регистрация: 21.06.2012
Сообщений: 13,863
09.07.2017, 09:45 3
Цитата Сообщение от Consoled Посмотреть сообщение
И нужно осуществить поиск с выбором таблицы и нужного поля
Поиск предполагает задание условий поиска. Как Вы предполагаете их задавать?

Не по теме:

Опоздал ...

0
0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
09.07.2017, 10:06  [ТС] 4
Поиск нужен по словам(не точный)
Таблица из другой бд
Поиск по нескольким полям
Файл с табл. прикрепить могу,но вес 350мб)
Извините что не точно,начинаю только
0
Модератор
Эксперт MS Access
11956 / 4824 / 779
Регистрация: 07.08.2010
Сообщений: 14,128
Записей в блоге: 4
09.07.2017, 10:23 5
Цитата Сообщение от Consoled Посмотреть сообщение
Файл с табл. прикрепить могу,но вес 350мб)
всегда можно сделать пример таблицы с десятком записей
0
Эксперт MS Access
17485 / 7247 / 1651
Регистрация: 21.06.2012
Сообщений: 13,863
09.07.2017, 10:25 6
Цитата Сообщение от Consoled Посмотреть сообщение
Поиск нужен по словам(не точный)
Вы сначала с методом поиска определитесь. Один из вариантов (расстояние Левенштейна) во вложении.
Вложения
Тип файла: 7z Расстояние_Л1.7z (34.0 Кб, 5 просмотров)
0
0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
09.07.2017, 10:45  [ТС] 7
Вот пример таблицы
Способ поиска через слово
Сравнение во всех столбцах и вывод строк содержащих нужное слово
Вложения
Тип файла: rar База данных11.rar (21.6 Кб, 12 просмотров)
0
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
09.07.2017, 11:36 8
Для поиска по всем полям в Access нет специального инструмента. Поэтому приходится выбирать из возможных вариантов:
1. создать запрос с юнионами для превращения Таблица1 в "вертикальную" с полями Код, ИмяПоля, Значение и в ней уже искать нужное. Запрос на "вертикальную" таблицу примерно такой
SQL
1
2
3
4
5
6
7
8
9
SELECT Код, "man" AS ИмяПоля, man AS Значение FROM Таблица1
UNION ALL
SELECT Код, "Поле2", Поле2 FROM Таблица1
UNION ALL
SELECT Код, "man poi", [man poi] FROM Таблица1
UNION ALL
........................
UNION ALL
SELECT Код, "Поле39", Поле39 FROM Таблица1
В таком запросе ищется в поле Значение. Можно соединить его (Inner Join) в запросе с основной таблице и по уникальному Код находить всю строку

2. Задавать в условии Where для каждого поля шаблон поиска
SQL
1
2
3
SELECT * FROM Таблица1
WHERE man LIKE "*" & [Введите слово] & "*" OR Поле2 LIKE "*" & [Введите слово] & "*" OR 
[man poi] LIKE "*" & [Введите слово] & "*" OR .... OR Поле39 LIKE "*" & [Введите слово] & "*"
3. Соединить все поля конкатенацией в одно и искать в нем
SQL
1
2
SELECT * FROM Таблица1
WHERE man & "|" & Поле2 & "|" & ...  & "|" & Поле39 LIKE "*" & [Введите слово] & "*"
Все эти методы достаточно долгие. Поэтому, если данных много, то очень желательно на основе одного из них создать таблицу, проиндексировать поля и искать уже в такой таблице
1
Модератор
Эксперт MS Access
11956 / 4824 / 779
Регистрация: 07.08.2010
Сообщений: 14,128
Записей в блоге: 4
09.07.2017, 12:38 9
мне кажется, что таблица не нормализована(16 полей характеризуют таблетку в целом, следующие 17 --наличие составляющих) --видимо наследие екселя
Код 1 2
man   "Farmak" a.s.
Поле2   "Farmak" a.s., Чеська Республіка
man poi   "Farmak" a.s., Чеська Республіка
name   Alfuzosin
Поле5    
sos   Порошок (субстанція) у подвійних поліетиленових пакетах
sos2    Альфузозину гідрохлорид
excip   0
Поле9    Субстанції
Поле10   Виробництво готових лікарських форм.
Поле11    
Поле12   2р.
Поле13    UA/3135/01/01
Поле14    з 25.05.2005 по 25.05.2010
Поле15    230 від 25.05.2005
Поле16    
Поле17 МКЦ 
Поле18 кроскармеллоза 
Поле19 повидон 
Поле20 кросповидон 
Поле21 Мg стеарат 
Поле22 ка фосфат 
Поле23 гипромеллоза 
Поле24 На крахмала гликолят 
Поле25 карбоксиметилкрахмал 
Поле26 ка стеарат 
Поле27 кроскармеллоза 
Поле28 H HPC 
Поле29 кремния диоксид 
Поле30 натрия стеарил фумар 
Поле31 этилцеллюлоза 
Поле32 * актоза 
Поле33 карбоксиметилцелюзозы натриевая соль 
Поле34 кальция фосфат 
Поле35 метилгидроксипропилцеллюлоза 
Поле36 гипромеллоза 
Поле37 натрия лаурилсульфат 
Поле38 полиэтиленгликоль 
Поле39 кальция гидрофосфат 
Код1   2
1
0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
09.07.2017, 13:21  [ТС] 10
Понял,спасибо большое
А что можно сделать с этим?
Нашел на форуме этот файл,он мне подходит как нельзя лучше
Но как занести новые таблицы в него не знаю(поиск не видит их)
Вложения
Тип файла: rar Поиск по выбранному полю.rar (15.3 Кб, 4 просмотров)
0
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
09.07.2017, 13:41 11
Пробуйте
Вложения
Тип файла: rar Поиск по выбранному полю.rar (20.4 Кб, 11 просмотров)
0
0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
09.07.2017, 13:47  [ТС] 12
Работает,но поля не видит(
0
Эксперт MS Access
26805 / 14484 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
09.07.2017, 13:55 13
Лучший ответ Сообщение было отмечено Consoled как решение

Решение

Да, поспешил немного
Вложения
Тип файла: rar Поиск по выбранному полю.rar (21.2 Кб, 16 просмотров)
1
0 / 0 / 0
Регистрация: 29.04.2016
Сообщений: 52
09.07.2017, 14:01  [ТС] 14
Огромное спасибо
0
09.07.2017, 14:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.07.2017, 14:01
Помогаю со студенческими работами здесь

Поиск по нескольким полям
Добрый день Подскажите, пожалуйста. Есть три раздельные поля (ФИО) как создать поисковик по ФИО? ...

Поиск по нескольким полям
Private Sub cmbFind_Click() Dim StrPoisk As String StrPoisk = "SELECT BasketStats.Дата,...

Поиск по двум полям
Прошу совета! При попытке организовать поиск в форме по двум полям: Private Sub Поле209_Change() ...

Поиск по всем полям таблиц(ы)
необходимо создать поиск по таблице(ам) по всем полям если идти по пути добавления отдельных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru