- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Привет, вчера начал изучать тонкости mysql, до этого обходился без них. Так вот, есть возможность объединить 4 таблицы и получить данные из них одним запросом, вместо четырех прежних. Я хотел спросить у вас, стоит ли объединять, не будет ли такой запрос занимать больше времени и больше памяти? Всегда ли стоит объединять таблицы?
Хороший вопрос. =) Обычно кол-во таблиц увеличивается для уменьшения размера БД и ускорения поиска. К примеру, если у Вас в одним из полей таблицы идут имена (Вася, Петя, Коля...) то имеет смысл каждому имени присвоить уникальный id и вынести в отдельную таблицу. В этом случае у Вас неограниченное кол-во строковых полей заменится на небольшое (равное кол-ву имён) + неограниченное числовых (содержащих id имени). Это ускорит поиск и уменьшит размер БД. Во всех остальных случаях ИМХО лучше хранить все данные в одной таблице.
lostpassword, iiner join или любой подходящий тебе join
bearman добавил 05.08.2009 в 09:24
Хороший вопрос. =) Обычно кол-во таблиц увеличивается для уменьшения размера БД и ускорения поиска. К примеру, если у Вас в одним из полей таблицы идут имена (Вася, Петя, Коля...) то имеет смысл каждому имени присвоить уникальный id и вынести в отдельную таблицу. В этом случае у Вас неограниченное кол-во строковых полей заменится на небольшое (равное кол-ву имён) + неограниченное числовых (содержащих id имени). Это ускорит поиск и уменьшит размер БД. Во всех остальных случаях ИМХО лучше хранить все данные в одной таблице.
вы описали термин "нормализация базы данных"
Хороший вопрос. =) Обычно кол-во таблиц увеличивается для уменьшения размера БД и ускорения поиска. К примеру, если у Вас в одним из полей таблицы идут имена (Вася, Петя, Коля...) то имеет смысл каждому имени присвоить уникальный id и вынести в отдельную таблицу. В этом случае у Вас неограниченное кол-во строковых полей заменится на небольшое (равное кол-ву имён) + неограниченное числовых (содержащих id имени). Это ускорит поиск и уменьшит размер БД. Во всех остальных случаях ИМХО лучше хранить все данные в одной таблице.
При генерации страницы пользователя нужны данные из всех 4-х таблиц. На других страницах столько данных не требуется. Не стоит забывать, что количество таблиц увеличивается и для большей упорядоченности. То есть информацию о дизайнах в соответствующей, о пользователях соответствующей. Так все таки ближе к теме, в моем случае объединять таблицы при запросе или не стоит?
Смотря что за таблицы и как их объединять :) Никто ничего вам не скажет, по таким исходным данным. Может вы 4 таблички объединяете "union all" или соединяете большие таблицы без единого индекса...
Как вариант, сравните время выполнения одного запроса и сумму 4, не думаю что они будут сильно различаться.