|
|
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Добрый день, У меня возник следующий вопрос по поводу организации поиска по базе данных средствами пхп. В данный момент я представлю это себе так: 1.берём список всех таблиц в который нада будет искать 2.начинаем их перебирать одна за другой, берем самую первую 3.ищем хитрым запросом сначала в столбце 1 потом 2 итд... 4.переходим к следующей таблице и так до конца. Скажите насколько правилен мой подход, есть ли варианты по-эффективнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 03:49 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Если "берём список таблиц" - то база, видимо, спроектирована неверно, А по поводу "ищем хитрым запросом сначала в столбце 1 потом 2 итд..." для этого существует Полнотекстовый поиск ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 09:37 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Что значит не верно спроектирована? Это очень удобно держать описание и название всех таблиц в одной отдельно взятой таблице, например в MSSQL уже существует такая системная таблица. Про полнотекстовой поиск я знаю, и имел ввиду его, когда говорил столбец1 ... столбец2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 14:05 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Viktor BartelЧто значит не верно спроектирована?это когда данные с одним и тем же смыслом хранятся в разных полях таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 14:17 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
если система рассчитана на универсальность, то за это ты платишь производительностью. ------------------ - А как в Интеpнете pаботать? - Сначала нужно узнать, что вам нужно rtfm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 14:21 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Нет я не нарушаю целостности представления данных, почти все таблицы спроектированны по одному и тому же принципу - таблица с полями заголовок, тело, итд. И я постарался добится универсалности, но я не вижу в етом недостатков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 20:44 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
За исключением того, что теперь вам придётся искать в каждой из однотипных таблиц по-отдельности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 20:51 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
maXmoэто когда данные с одним и тем же смыслом хранятся в разных полях таблицы. Пример моей таблицы news: id_note | note_head | note_body | note_date | note_suser | etc... 1 | J.W. Bush | <h1>encule</h1>| 2005-09-14 | pukin | как вы догадываетесь я хочу организовать поиск по полям заголок и тело, и условие повторения информации в разных колонках отсутствует. Цель моего вопроса была спросить у опытных специалистов что они думают о моей стратегии поиска, верна ли она. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 20:53 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
DocAlЗа исключением того, что теперь вам придётся искать в каждой из однотипных таблиц по-отдельности. Зато я не нарушу правила релационых баз даных(целостность данных уровень 2). Нельзая хранить однотипные данные в одной и той же таблице например: body | kind BBBB | news AAAA| article ZZZZ| other если вы не разбираетесь в сюжете, просьба не советовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 20:59 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Ссылочку на описание этих правил приведёте? Возможно, мы понимаем за этой формулировкой разное, а поиск в инете по вашей... ээ... ссылке ("правила релационых баз даных целостность данных уровень 2") к нужному результату не привёл даже после исправления опечаток. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 21:23 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Не всегда, что написано - догма... Иной раз сознательно идешь на НАРУШЕНИЕ Правил нормализации. И причины могут быть разными. В первую очередь при увеличении скорости. 100% имхо конечно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 21:27 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Viktor BartelНельзая хранить однотипные данные в одной и той же таблицеСсылку на авторитетный источник, в котором допущен подобный ляп, в студию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 21:55 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
DocAlСсылочку на описание этих правил приведёте? Простите но я что то не могу найти так сразу, источник в котором я это прочитал. Но все равно данный источник на францизском языке. Если вы изучали бд в универе то вы наверное слышали про 1,2 и 3 нормальные формы? Так вот это от туда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:13 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Не могет такого быть. имхо тогда перевод такой... Это даже мне, носику от чайника, понятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:17 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
А вот нашел, на русском, это правило: 1. Адекватность. Пусть это исходное отношение адекватно отображает предметную область. Т.е если не следовать этому правилу и засовывать в одну таблицу новости, артикли, личные заметки то в резултате получим бордель :). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:23 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Во всем указанном документе, уважаемый, НЕТ слова "однотипные" и его словоформ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:28 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Di_LIneВо всем указанном документе, уважаемый, НЕТ слова "однотипные" и его словоформ... Я не говорил что данные однотипные, я сказал что принципиально они похожи но в отличии от новостей в статье обязателно надо указывать автора, далее в таблицах исползуются разные дополнительные поля. Я, может быть в отличии от вас, не я желаю получать огромный бордель на месте двух простых таблиц. Я думаю что вы не очень понимаете предметную область моего проекта. Я не вижу необходимости вам все разъеснять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:37 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
Если вы не хотите получать ответов -- зачем задаёте вопросы? Ещё и на нескольких форумах разом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:47 |
|
||
|
(PHP) Эффективный поиск
|
|||
|---|---|---|---|
|
#18+
во первых мой вопрос был вообше не о выше сказаном, во вторых вас это не касается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 22:49 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=33275628&tid=1477588]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
158ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 437ms |

| 0 / 0 |
