
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
19.05.2014, 12:41:55
|
|||
|---|---|---|---|
Переменные в запросе |
|||
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. суть запроса, у меня в БД date в формате DATETIME, time_from в timestamp, lasting тоже в timestamp я бы хотел чтобы учитывались переходы между днями, допустим если timestamp + lasting > 86400, это уже следующий день. Изначально был такой запрос, где соотвественно это не учитывалось. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. как составить запрос наиболее оптимизированно в моем случае? ну и конечно чтобы работало, заранее спасибо всем кто откликнется) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.05.2014, 22:15:41
|
|||
|---|---|---|---|
Переменные в запросе |
|||
|
#18+
mimi22, 1. не используйте переменные кроме как в СЕЛЕКТ части. 2. лучше не используйте переменные вообше. 3. не называйте колонку "date" 4. приведите пример исходных данных (4-10 строчек) и ожидаемого результата ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.05.2014, 13:02:07
|
|||
|---|---|---|---|
|
|||
Переменные в запросе |
|||
|
#18+
javajdbcmimi22, 1. не используйте переменные кроме как в СЕЛЕКТ части. 2. лучше не используйте переменные вообше. 3. не называйте колонку "date" 4. приведите пример исходных данных (4-10 строчек) и ожидаемого результата поддерживаю, не вникал что делает запрос точно, но внешне, смысла переменых вообще не видно. его сдесь просто нету никчему делать Код: sql 1. 2. 3. можно сразу Код: sql 1. 2. полагаю автор хотел оптимизировать, пощитал что для каждой строки будет вычисляться значение sql_function(:myconst) Нет, функция от константы, это константное значение, так что мускл один раз пощитает и уже во время самой работы секции where будет работать с условием field1 < calculated_sql_function_from_my_const где calculated_sql_function_from_my_const - константа для данного запроса. а вот то что автор намутил, приведет к тому что будет выборка всей таблицы, итолько потом реальная фильтрация, т.к. переменные обрабатываються только во время отдачи результата клиенту Тоесть база обрабатывает 1)секция фром (подготовка источника) 2)фильтрация с помощью индексов (секция веар) 3)чтения отобраного на этапе2, с фильтрацией не по индексам и подготовка результата(секция селект) 4)отдача клиента и если есть переменные, то они будут работать на этапе 3.5 перед отдачей клиенту ЗЫ я вобщем описал этапы обработки, чтоб показать почему сдесь переменные очень вредны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1834802]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 323ms |

| 0 / 0 |
