- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Как в одном запросе извлечь данные о неких элементах в таблице, и попутно с других таблиц прицепить к ним строки соответствующие по идентификатору. Суть на примере:
Я извлекаю данные о товарах:
Но для того чтобы извлечь для каждого товара доп. данные с других таблиц, мне приходится массив $res перебирать циклом и делать много запросов к ост таблицам:
Как это чётенько и компактно, по возможности максимум снизив нагрузку на сервер, сделать в одном запросе?
http://dev.mysql.com/doc/refman/5.0/en/join.html
Вообще это делается с помощью JOIN. Инструкция элементарная, разобраться 5 минут времени.
dimsog, а можно ли сделать такой запрос чтоб обойтись без перебора циклом записей из products?
Sanu0074, глянь мою старую тему - /ru/forum/821551
Мож поможет
А если вариант, в котором comments и likes будут в таблице products, просто поле section у них будет = comments и likes соответственно, т.е. чтоб их извлечь нужно выполнить запрос:
Получается нужно делать так:
пример тупой, понимаю, но допустим такая ситуация, то как сделать все в одном сложном запросе?
нужно делать JOIN той же таблицы (работать будет)? это правильно?
section IN ('likes', 'comments') что аналогично OR
dimsog, а можно ли сделать такой запрос чтоб обойтись без перебора циклом записей из products?
Я же показал объединение таблиц, там можно сделать любое условие выборки и никаких циклов не нужно.
dimsog, да, я именно этим воспользовался, просто спрашиваю о том, несколько join'ов в запросе в плане производительности это не критично?
Это намного лучше, чем перебирать массив циклом, а также быстрее в разы. Главное, чтобы ключи были проставлены. Главное, не добавлять сортировку ORDER BY, так как работать будет медленнее.
dimsog, насчет ключей, например id - primary, а prod_id если есть (внешний ключ), то - index ?