powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите оптимизировать запрос
8 сообщений из 8, страница 1 из 1
Помогите оптимизировать запрос
    #39210134
sprite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите пжл оптимизировать запрос:

Код: sql
1.
SELECT COUNT(t3.id_market) AS counttov1 FROM SC_products t1,SC_categories t2,WWW_otziv t3 WHERE t1.productID=t3.tovar AND t1.categoryID=t2.categoryID AND t1.in_stock>'-1' AND t1.ordering_available='1' AND t2.categoryID IN ('1263','1266','1267');



Заранее спасибо
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210526
sprite,

не зная структуры таблиц, состава и распределения данных, схемы индексирования и планов выполнения запросов - помочь невозможно.
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210527
sprite,

но первое, что сразу бросается в глаза и смущает - это представление численных данных в строковом виде ('-1','1', '1263','1266','1267')
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210557
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT COUNT(t3.id_market) AS counttov1 
FROM SC_products t1
join SC_categories t2 on t1.categoryID=t2.categoryID
join WWW_otziv t3 on t1.productID=t3.tovar
WHERE t1.in_stock>'-1' 
  AND t1.ordering_available='1' 
  AND t1.categoryID IN ('1263','1266','1267');



Ну, что тут скажешь ?

Код: sql
1.
create index ixd_xxxx on SC_products (categoryID, ordering_available, in_stock);



Надеюсь, что индексы по полям
t3.tovar
t2.categoryID

уже есть...
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210558
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эхsprite,

но первое, что сразу бросается в глаза и смущает - это представление численных данных в строковом виде ('-1','1', '1263','1266','1267')


Да,

Код: sql
1.
t1.in_stock>'-1'

вообще феерично.

Ну, допустим, там будут в константах не строки, а числа...
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210626
sprite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
индексы есть,

EXPLAIN вот что выдает:
Код: sql
1.
1 	SIMPLE 	t3 	ALL 	tovar 	NULL	NULL	NULL	24971 	Using join buffer (Block Nested Loop)



представление численных данных в строковом виде ('-1','1', '1263','1266','1267')
подскажите а как лучше переписать?

t1.in_stock>'-1'
подскажите а как лучше переписать?

Спасибо заранее
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210627
sprite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
даже вот так что бы было понятнее:
Код: sql
1.
2.
id 	select_type 	table 	type 	possible_keys 	key 	key_len 	ref 	rows 	Extra 	
1 	SIMPLE 	t3 	ALL 	tovar 	NULL	NULL	NULL	24971 	Using join buffer (Block Nested Loop)
...
Рейтинг: 0 / 0
Помогите оптимизировать запрос
    #39210715
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spriteиндексы есть,

EXPLAIN вот что выдает:
Код: sql
1.
1 	SIMPLE 	t3 	ALL 	tovar 	NULL	NULL	NULL	24971 	Using join buffer (Block Nested Loop)




индексы мало того, что должны быть, они еще должны быть такие, как надо.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите оптимизировать запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]