![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 27.07.2013
Сообщений: 256
|
![]()
Мы задаём, например, три ключевых слова для поиска.
Бд ищет все файлы, к которым привязаны сразу все три наши заданные слова. Бд проверяет у всех найденных файлов связи с другими словами и выдаёт все связанные слова. Имеются три таблицы: tablizca_izobrazhenij (id, izobrazheniya) — айди и имя файла; tablizca_slov (id, slova) — айди и слово; tablizca_svyazej (id_izobrazheniya, id_slova). Помогите, пожалуйста, составить SQL запрос. Вот что получилось у меня (связка с PHP), но он ищет все файлы, к которым привязано хоть одно заданное слово, а нужно, чтоб искал только те файлы, к которым привязаны сразу все слова: PHP код:
Последний раз редактировалось Stilet; 18.07.2014 в 18:24. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 08.11.2009
Сообщений: 225
|
![]() Код:
Последний раз редактировалось Pamparam; 21.07.2014 в 18:00. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 27.07.2013
Сообщений: 256
|
![]()
Спасибо, но сам алгоритм себя крайне не оправдал, очень долго ищет. От восьми минут и более… До сорока бывало)))
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 03.01.2014
Сообщений: 2,870
|
![]()
Сколько записей в БД?
![]() |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 27.07.2013
Сообщений: 256
|
![]()
Названия таблиц изменил, чтобы проще запрос был.
Последний раз редактировалось Andrej_K; 23.07.2014 в 09:47. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 27.07.2013
Сообщений: 256
|
![]()
Тему можно закрывать.
На другом форуме подсказали решение, (Как организовать бд для вот такой задачи?) я переделал под свои названия: Код:
ts (ids, s) — таблица слов. t_s (id_n, id_s) — таблица связей между наборами и словами. Последний раз редактировалось Andrej_K; 24.07.2014 в 11:02. |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 27.07.2013
Сообщений: 256
|
![]()
tn (idn, n) — таблица наборов слов.
ts (ids, s) — таблица слов. t_s (id_n, id_s) — таблица связей между наборами и словами. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема в выборке из двух таблиц запросом SQL Server 2012 | qpash | SQL, базы данных | 2 | 19.03.2014 10:04 |
Помогите с SQL-запросом | FleshDro | SQL, базы данных | 15 | 28.07.2009 13:32 |
Помогите с SQL запросом | DDmitriy | Microsoft Office Access | 4 | 07.05.2009 15:51 |
SQL. Помогите с запросом. | fluxion | БД в Delphi | 2 | 27.12.2007 08:01 |
Помогите с SQL запросом. | Monoflextor | БД в Delphi | 12 | 29.04.2007 16:53 |