![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Witam,
tworzę wyszukiwarkę i mam pewien problem. Mam 6 tabel... Kod * articles article_id //i kilka innych pól, ale wystarczy w tej chwili to jedno * articles_lang article_id | title | intro | txt * news news_id //jw. * news_lang news_id | title | intro | txt * press_review review_id //jw. * press_review_lang review_id | title | intro | txt Daną frazę (w tym wypadku wyszukuję wszystkich wystąpień litery 'a' - %a%) mam znaleźć w 3 tabelach: articles_lang, news_lang, press_review_lang i jednocześnie wyciągnąć z tabel articles, news, press_review dodatkowe informacje (klucz obcy *_id). Kombinuję z tym wszystkim i nie bardzo mi wychodzi. Doszedłem do wyszukiwania w 2 tabelach:
To jest koszmar optymalizacyjny (nieoptymalna konstrukcja LIKE, czas wykonania zapytania: 12s!), dodatkowo nie wiem, jak do tego dołączyć 5 i 6 tabelę (press_review i press_review_lang). Kolejny "UNION" wywala błąd (skrót, nie wszystkie pola):
Kod ERROR: UNION types text and integer cannot be matched Byłbym wdzięczny za sugestie, jak optymalnie przeszukać pola title, intro, txt w każdej z 3 tabel i przy okazji wybrać dane z tabel im odpowiadających. Wydawało mi się to proste, ale albo coś mieszam i niepotrzebnie komplikuję, albo jest to bardziej zamieszane. Nie wiem, rozdrobnić to na więcej zapytań? Niestety nie mam dostępu do serwera, więc tsearch i podobne rzeczy niestety odpadają ![]() Z góry dzięki za wszelką pomoc! Ten post edytował czachor 27.12.2007, 00:04:32 -------------------- how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 55 Pomógł: 1 Dołączył: 5.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Optymalizacja niestety nie jest taka prosta sprawa.
Na Twoim miejscu:
Wiem, że to dużo nie wnosi, bo największym kłopotem jest LIKE, ale zawsze jakaś sugestia. Pozdrawiam, MikroUser |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 897 Pomógł: 40 Dołączył: 16.12.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jasne, dzięki. Racja z tym LOWER, o tym nie pomyślałem. Póki co mam właśnie wyszukiwanie po jednym zestawie, ale cały czas szukam (już chyba z ciekawości i na przyszłość), czy jest inny sposób na to.
-------------------- how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 07:57 |