Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: помогите оптимизировать запрос
 
 автор: Импекс   (20.07.2010 в 10:11)   письмо автору
 
 

Всем привет, подскажите, как по быстродействию, и если можно, помогите оптимизировать


SELECT DISTINCT kirm.name as fna,fira.znk as znak,kirm.x as x,kirm.y as y,kirm.id as fid,adress,email,url,home,telefon  
FROM uto,r_t,kirm
 WHERE kirm.id=uto.id_firm and r_t.id_tovar=uto.id and kirm.registr=1  
 and id_rubrik IN (SELECT id FROM gr_new WHERE id_parent = ".intval($_GET['id'])." ORDER BY name asc)  ORDER by fname asc

  Ответить  
 
 автор: Trianon   (20.07.2010 в 10:32)   письмо автору
 
   для: Импекс   (20.07.2010 в 10:11)
 

А что, на форуме уже телепаты появились?
Как догадываться, какие поля от каких таблиц? Какие индексы где стоят?

ORDER BY во вложенном запросе - это просто праздник какой-то!

  Ответить  
 
 автор: Импекс   (20.07.2010 в 10:36)   письмо автору
 
   для: Trianon   (20.07.2010 в 10:32)
 

ORDER BY во вложенном запросе - это просто праздник какой-то!

а если необходимо отсортировать по Id вложенном запросе, или это не работает?

  Ответить  
 
 автор: Импекс   (21.07.2010 в 12:43)   письмо автору
 
   для: Trianon   (20.07.2010 в 10:32)
 

Надеюсь этого достаточно

uto(
    id INT (11) Безнаковое
    id_firm int (11)
    .....)
    
r_t (
    id int(10) Безнаковое
    id_tovar int (11)
    id_rubrik int(11)    
)

kirm (
    id int(10) Безнаковое
    name varchar (255)
    x int (11)
    y int (11)
    registr tynyint (4)    
)

gr_new(
    id int(11)
    id_parent int(11)
)


основные условия kirm.registr=1 и id_rubrik = число и связь таблиц по полю kirm.id=uto.id_firm

что ищу: данные из таблицы kirm

и главный вопрос: как в этом запросе избавиться от Distinct
SELECT DISTINCT kirm.name as fna,fira.znk as znak,kirm.x as x,kirm.y as y,kirm.id as fid,adress,email,url,home,telefon  
FROM uto,r_t,kirm
 WHERE kirm.id=uto.id_firm and r_t.id_tovar=uto.id and kirm.registr=1  
 and id_rubrik IN (SELECT id FROM gr_new WHERE id_parent = ".intval($_GET['id'])." ORDER BY name asc)  ORDER by fname asc

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования