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

Форум MySQL

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

 

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

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

тема: вопросы по оптимизации
 
 автор: Diablo_   (05.12.2006 в 13:57)   письмо автору
 
 

Добрый день!
У меня есть несколько вопросов, по оптимизации запросов к мускулу.
Если не затруднит, ответье.
1. Как лучше использовать запросы Select к нескольким таблицам? В одном запросе или в нескольких по очерёдно?
2. Предположим, есть таблица, хранящая информацию о людях (id(иникальный), id_2(собственный) имя, возраст, дата рождения, адрес, телефон, моб телефон и тд..). Нужно создать ещё одну таблицу, в которой, будет хранится доп информация, как лучше испоьзовать бля определения id уникальный или сделать собственный?
3. как лучше писать Select * from или Select count(id, name) from?

И если можно, то комментариями!

   
 
 автор: cheops   (05.12.2006 в 20:45)   письмо автору
 
   для: Diablo_   (05.12.2006 в 13:57)
 

1) Это зависит от запроса и объёма информации, которые запросы извлекают, зачастую несколько запросов выполняются быстрее одного многотабличного.
2) Можно использовать уникальный индекс или обычный - это в общем не принципиального...
3) А для каких целей? Для подсчёта количества записей? Если да, тогда лучше использовать функцию count().

   
 
 автор: Diablo_   (05.12.2006 в 21:45)   письмо автору
 
   для: cheops   (05.12.2006 в 20:45)
 

по первым двум, я понял, спасибо, а вот по третьему:
если предположим. у меня таблица, состоит из 10 ячеек, а нужно в запросе, получить, только 2, как в этом случае быть? получать инфу всех столбцов глупо!

   
 
 автор: Rolands   (06.12.2006 в 10:01)   письмо автору
 
   для: Diablo_   (05.12.2006 в 21:45)
 

dlja etogo estj LIMIT

tut zhe manual estj cho trudno pochitatj?
http://softtime.ru/bookphp/gl12_9.php#10

Оператор LIMIT может также принимать два числовых аргумента, которые должны быть целыми числами. В этом случае последний аргумент задает максимальное количество возвращаемых строк, а первый сообщает MySQL начиная с какой по счёту строки производить отсчёт

SELECT * FROM forums LIMIT 1,3

   
 
 автор: programmer_2006   (06.12.2006 в 17:43)   письмо автору
 
   для: Diablo_   (05.12.2006 в 21:45)
 

Сколько хочеш ячеек, count используют для подсчета общего числа строк достаточно count(id).
В другом варианте SELECT aaa,bbb, ..... FROM любое кол-во столбцов которые тебе необходимы.
Насчет производительности. Пиши все одним запросом тогда идет одно обращение к БД что положительно сказуется на производительность. Думаю как писать запросы с подзапросами или с групировкой таблиц ты знаеш. Советую книгу MySQL Учебное пособие изд. Вильямс.

   
Rambler's Top100
вверх

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