SQL и PHP код, что быстрее?14.10.2013, 13:11. Показов 4358. Ответов 4
Метки нет (Все метки)
На сайте есть база данных MySQL. Сайт написан на PHP.
Необходимо выводить данные с базы отфильтрованные. Данные хранятся в 20 таблицах связанные между собой. Стоит вопрос о быстроте вывода отфильтрованных данных на страницу сайта. Первый способ. Можно сделать запрос к базе, объеденив через LEFT JOIN все таблицы и задав все параметры выбора. Полученную таблицу обработать в PHP коде в соответствии с заданной сортировкой и выложить на странице результат. Либо второй способ. Разбить запрос на несколько запросов к базе данных. Полученные таблицы обработать в PHP коде и так далее. Первый способ более долго (по идее) будет выполняться в SQL, чем второй (несколько запросов). Но второй способ будет дольше выполняться в PHP, так как те параметры выбора, которые не были сделаны в SQL надо сделать в PHP. Встает вопрос, как определить, какой же способ окажется в итоге быстрее? Или, может уже известно, какой способ быстрее?
0
|
|
| 14.10.2013, 13:11 | |
|
Ответы с готовыми решениями:
4
Что быстрее: DLookUp или SQL SELECT через что быстрее подключаться к sql servery? Что быстрее: макрос или код VBA ? |
|
9 / 9 / 0
Регистрация: 26.02.2010
Сообщений: 165
|
|
| 14.10.2013, 21:54 | |
))) тестами...вообще непонятно ничего, все размыто. а конкретика где? с чего взяли что mysql дольше? все всегда зависит от структуры бд, от структуры программы, и от оптимизации под железо mysql
0
|
|
| 14.10.2013, 22:19 [ТС] | ||
|
Более конкретно. Обработка данных происходит в два этапа. Сначала по запросу SQL, потом результат запроса обрабатывается в PHP. Свести только к чему то одному, не получится. Теперь встает вопрос, если вся обработка кода состоит из двух часте: SQL и PHP, то как распределить задачи так, чтобы в сумме было наименьшее число времени. Теперь вводные. 20 таблиц с которых надо получить данные по фильтру. Данные, это порядка 30 полей по которым еще входные данные (в том числе массивы) на фильтрацию. Ну два варианта разбиения на две части выполнения, я уже написал. Если писать один большой запрос, то он будет выполняться долго, так как много будет пустых мест в таблице. Поэтому то и 20 таблиц. Но выведя все в одну таблицу легче написать код обработки этих данных. Если писать 20 запросов, то они в сумме быстрее выполнятся, но полученные данные придется дополнительно сортировать, проверять и фильтровать в PHP. Представим, что в первом случае запрос выполняется 100 секунд, а обработка 20 секунд. Во втором все запросы выполняются 60 секунд, а обработка 60 секунд. Вот так надо прийти к минимальной сумме. Вот здесь трудно, без метода тыка (написания кода и проверки работы), определить как поступить. Но тыкаться не хочется.
0
|
||
|
9 / 9 / 0
Регистрация: 26.02.2010
Сообщений: 165
|
|
| 14.10.2013, 23:17 | |
|
незнаю. вы не даете данные какая нагрузка будет.
может там 100 строк, а может миллион, может там нагрузка 50 тыс запросов, а может 1 запрос в сек.
0
|
|
|
Заблокирован
|
||
| 15.10.2013, 21:06 | ||
|
0
|
||
| 15.10.2013, 21:06 | |
|
Помогаю со студенческими работами здесь
5
На Unity можно оптимизировать код, что-бы он быстрее работал?
Дружба Denwer(PHP 5.3.3) с MSSQL 2008 R2. Не удаётся установить подключения к MS SQL через PHP код PHP код - код есть, а что с ним делать неизвестно, вопросов не имею
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во
всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
|