Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
оптимизация запроса (kookaah) 08/09/2003 - 22:01:41
      Re: оптимизация запроса (Валентин) 09/09/2003 - 13:50:34

> Original message text:
> From: kookaah - 08/09/2003 - 22:01:41
> Subject:оптимизация запроса
> -----------------
> Суть проблемы ( вкратце, на примере):
> есть таблица A с 10тью полями. Из них в 5ти полях хранятся значения индексов для других ( B,C,D,E,F) таблиц.
> Одна из этих 5ти таблиц зависима еще от двуз таблиц (F2,F3)
> Мне нужен запрос для вывода таблицы A ( по некоторым условиям ), так чтобы вместо айдишников выдавались значения соответсвующих полей соответсвующих таблиц. Фух!
>
> Написал запрос без JOINов. Explain для таблиц C,D,E,F,F2,F3 выдает, что все ок - используются PRIMARY ключи, а вот с одной B - почему-то нет. Хотя она точь-точь такая же как и остальные. Я уж ее и так и эдак уговаривал и просил вручную, чтобы ключ использовала... Пел, бил в бубен, плясал вокруг костра - ничего не помогает. Подскажите, плиз, запрос, как увязать все эти таблицы joinaми.
>
>


From: Валентин - 09/09/2003 - 13:50:34
Subject:оптимизация запроса
-----------------
Если мускул считает, что быстрее по таблице B будет без индексов, то значит будет действительно быстрее.
Если сильно хочется заставить использовать индекс используйте force index (IndexName).

1)Если речь идет о товарном движении, то попробуйте последовательно переработать данные используя временные таблицы (TEMPORARY).

2)Используйте для всех таблиц left join, потому что у вас по условию нужно получить связку основываясь на таблице А, а для мускула left join достаточно легко в таком запросе, он его сможет сделать на первом проходе.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
10566



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |