|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
Есть запрос, например товары + остатки, но надо выбрать еще одну таблицу, которая не связана с первыми двумя, как справочник/параметр, но отдельным столбцом чтобы была. Добился результата, но не могу понять правильно ли так делать. Обычный fetch, не полный. Был основной запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Выполняется: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Делаю так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Выполняется: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Забираю WHERE, выполняется оба варианта за примерно 600ms, план: Код: plaintext
Я так понимаю что вместо +0 можно использовать любое вычисление? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:19 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
забыл указать, версия 3.0.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:21 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
dimmon.ua, у тебя выполняет CROSS JOIN если что, но для того чтобы просто зафиксировать порядок "соединения" можно использовать LEFT JOIN Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:27 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
dimmon.ua забыл указать, версия 3.0.5 если ещё и суперсервер, то поднимай страничный кеш раз в 20 для начала ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:30 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
Симонов Денис, спасибо, LEFT JOIN отрабатывает норм, старюсь максимально их избегать т.к. уже раз бился что в 2.5 работает, а в 3.0 нет и наоборот, а был момент что надо было чтобы работало в двух версиях одинаково красиво, сейчас все полностью уже на 3.0, вот и пытался выйти из ситуации, либо не умею готовить LEFT JOIN :) По поводу кеша, прикрепил отличие от стандартных (вы мне кстати пару лет назад очень помогли насчет этого дела :) спасиб ), но думаю переборщил для обычных баз до 1 гб, часто сообщают об ошибке "Operating system directive MapViewOfFile failed.", но это уже другая тема будет если не разберусь. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:48 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
dimmon.uaстарюсь максимально их избегать не надо их избегать. Надо разобраться когда оно нужно, а когда нет. В данном случае LEFT JOIN только задаёт явный порядок соединения. dimmon.uaПо поводу кеша, прикрепил отличие от стандартных что-то я не вижу что ваш конфиг действует Код: plaintext 1. 2. 3. 4.
в хидер базы случайно не прописано? dimmon.uaно думаю переборщил для обычных баз до 1 гб вообще-то для каждой БД можно задавать индивидуально в databases.conf ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 11:55 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
Блин точно "Memory buffers = 2048" пошел за filemon интересно откуда он его взял ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 12:15 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
dimmon.ua, какой filemon??? проверяй gstat -h база. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 13:20 |
|
Про оптимизацию запроса и +0
|
|||
---|---|---|---|
#18+
kdv, в базе авторPage buffers 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 13:51 |
|
|
start [/forum/topic.php?fid=40&msg=39915434&tid=1560467]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
153ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 256ms |
total: | 493ms |
0 / 0 |