Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) 1 [2] 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> JOIN vs массивы с циклами
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15559
Пользователь №: 6543
На форуме: 8 лет, 1 месяц, 29 дней
Карма: 299

Трезвый :
5 лет, 11 месяцев, 8 дней


Цитата (Zzepish @ 2.09.2016 - 07:29)
Не совсем простые.

Дело не в простоте сайтов, а в интенсивности и сложности запросов.
У Arh запрос простой, тем более что он связал таблицы по первичному ключу. А если это будет "один ко многим", с большим объемом данных, да еще и со сложными условиями выборки, то картина изменится. А если джоинов несколько, то ваще труба дело.

Ну а если таблицы небольшие и условия не сложные, то фигня это всё. Опять же зависит от нагрузки. Одно дело три таких запроса в сутки, другое - несколько миллионов.

Все зависит от конкретики. Доля здравого смысла в атомарных запросах есть, но далеко не всегда. По большей части это паранойя.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 777
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 5 дней
Карма: 40




Цитата (Zzepish @ 2.09.2016 - 09:48)
Вот тимлид заставаляет, если у нас всего 2-4 таблицы, делать через 2-4 запрос и разбирать на уровне php. Я хз - правильно ли это (не замерял). У кого есть какие мысли на эту тему?

Для тебя не имеет значения, правильно или нет, - сказано, делай. С начальством спорить, что против ветра п...
И потихоньку про себя радуйся, что твоё начальство не умеет работать с БД. Ибо потом, когда оно научится (или придёт более умное), тебя заставят переделать по правильному. Тебе лафа: есть работа - есть зарплата. wink.gif


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 777
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 5 дней
Карма: 40




Цитата (Arh @ 2.09.2016 - 10:25)
Только что сделал тест...

Сравнение корректно только при связи 1:1.
В остальных случаях, абсолютно бессмысленное, ибо JOIN совсем другое делает.


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2102
Пользователь №: 27172
На форуме: 5 лет, 8 месяцев
Карма: 70




S.Chushkin
Цитата
ибо JOIN совсем другое делает

Что делает JOIN?


--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 6 дней
Карма: 49




S.Chushkin
Цитата
Для тебя не имеет значения, правильно или нет, - сказано, делай. С начальством спорить, что против ветра п...

Потому так и живем. Ибо авторитаризм. Мне проще сменить работу, чем подчиняться идиоту!
Цитата
И потихоньку про себя радуйся, что твоё начальство не умеет работать с БД. Ибо потом, когда оно научится (или придёт более умное), тебя заставят переделать по правильному. Тебе лафа: есть работа - есть зарплата.

Ну, он умеет работать с бд. Чувак хорошо шарит. Но хз, чего так задрачивает.


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 777
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 5 дней
Карма: 40




Цитата (Zzepish @ 2.09.2016 - 19:34)
Чувак хорошо шарит.

Одно из двух, или не "шарит" или ты не точно передал его слова/приказ.


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 6 дней
Карма: 49




S.Chushkin
точно звучит вот так: join медленнее, чем разобрать ряд массивов на пхп. Юзай массивы!


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 14962
Пользователь №: 4190
На форуме: 8 лет, 9 месяцев, 25 дней
Карма: 443




В теме было сказано много слов, но ни разу не прозвучали слова "индексы" и "EXPLAIN". Без этих слов вообще нечего обсуждать.
Если всё правильно настроить, то все джойны надо делать на уровне БД.

А тим-лиду задай вопрос: в ПХП что, по его мнению, разбор данных мгновенно делается или тоже время нужно на это? Интересно бы узнать его мнение по этому поводу smile.gif

Цитата (S.Chushkin @ 2.09.2016 - 19:53)
Одно из двух, или не "шарит" или ты не точно передал его слова/приказ.

Полностью согласен с этим утверждением.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 6 дней
Карма: 49




sergeiss
Ну, как правило, архитектуру бд проектирует и саму бд делает он. Ключи расставляет. Грамотно выставляет поля и их параметры. Ну - это насколько я могу судить


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 14962
Пользователь №: 4190
На форуме: 8 лет, 9 месяцев, 25 дней
Карма: 443




Zzepish, а как насчет индексов и explain запросов? Без explain ты не поймешь, используются ли у тебя индексы.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 6 дней
Карма: 49




sergeiss
индексы ставит. Explain я не пробовал!


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 14962
Пользователь №: 4190
На форуме: 8 лет, 9 месяцев, 25 дней
Карма: 443




Цитата (Zzepish @ 2.09.2016 - 23:21)
индексы ставит.

Кто "индексы ставит". Тот самый тим-лид? Ну так и вопрос мой как раз в том и состоит, что используются ли индексы. И насколько они эффективны для данного конкретного запроса. Может быть, там надо сделать сложный индекс (на 2 или больше поля одновременно)... Короче говоря, тут не так просто "поставил индексы" и они работают. Хренушки.

PS. Скорость выборки может зависеть даже от того, в каком порядке стоят поля в сложном индексе.

Это сообщение отредактировал sergeiss - 2.09.2016 - 23:34


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 777
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 5 дней
Карма: 40




Цитата (Zzepish @ 2.09.2016 - 20:07)
S.Chushkin
точно звучит вот так: join медленнее, чем разобрать ряд массивов на пхп. Юзай массивы!

"Каждый заблуждается в меру своих возможностей" (с) не мой smile.gif

Полный аналог JOIN на ПХП в большинстве случаев будет работать медленне.
Только на маленьких таблицах и очень простых условиях выборки может работать побыстрее. И вариант связи 1:1 также может работать побыстрее на не очень больших таблицах (сотни-тысячи записей, может десятки - не проверял).
В остальных случаях JOIN "сделает" ваш алгоритм.
Для справки: непосредственно отбор записей в mySQL (без индексов) идёт порядка 2 млн./сек. А если по индексам, - в ПХП может обогнать только прямой доступ к элементу массива.

В общем, для Знания прими за аксиому: в mySQL правильная выборка не медленнее, чем её эмуляция в ПХП в 99,9% случаев. В PG думаю также.
Хочешь верь, хочешь проверь...


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 6 дней
Карма: 49




sergeiss
Цитата
Кто "индексы ставит". Тот самый тим-лид? Ну так и вопрос мой как раз в том и состоит, что используются ли индексы. И насколько они эффективны для данного конкретного запроса. Может быть, там надо сделать сложный индекс (на 2 или больше поля одновременно)... Короче говоря, тут не так просто "поставил индексы" и они работают. Хренушки.

PS. Скорость выборки может зависеть даже от того, в каком порядке стоят поля в сложном индексе.

Это я знаю. Я видел индексы, но сам не проверял работоспособность системы с индексами. Наскошлько я знаю - тут еще надо ровные запросы делать!


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 14962
Пользователь №: 4190
На форуме: 8 лет, 9 месяцев, 25 дней
Карма: 443




Zzepish, что ты имеешь ввиду под словами "ровные запросы"?


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) 1 [2] 3  Ответ в темуСоздание новой темыСоздание опроса