Страница 2 из 2

Re: Подсчет количества элементов в другой сущности

Добавлено: 02 фев 2021, 19:36
support
Условие: e.id = [ххх]
Это если один пользователь назначается на заявку. Если там выбор из нескольких значений,тогда

Код: Выделить всё

find_in_set(e.id,[xxx])

Re: Подсчет количества элементов в другой сущности

Добавлено: 02 фев 2021, 19:54
Степан
Та вряд ли они толпой на одну заявку набрасываются)))
но за подсказку спасибо!

Re: Подсчет количества элементов в другой сущности

Добавлено: 21 ноя 2025, 20:57
isbesedin
Степан писал(а): 02 фев 2021, 19:24 В сущности ПОЛЬЗОВАТЕЛИ делаем поле MySQL запрос

Выполнять динамически: флаг
Выбрать из сущности: ЗАЯВКИ
Выбрать поле: COUNT(*)
Условие: e.id = [ххх]


[ххх] - поле выбора пользователя в сущности ЗАЯВКИ
Решаю подобную задачу, и делаю поле Количество записей для клиента, в котором считается сколько раз нас посещал конкретный клиент. Использовал запрос выше:
Выбрать поле: COUNT(*)
Условие: e.id = [ххх]

Все хорошо считается, но когда хочу проводить какие-то манипуляции с этим полем (фильтр, сортировку или вычислить среднее), то вылезает ошибка

Database Error: 1317 - Query execution was interrupted
Query: select sum(IFNULL((select COUNT(*) from app_entity_27 msq where e.id = msq.field_242 limit 1),0)) as total_1021 ,IFNULL((select COUNT(*) from app_entity_27 msq where e.id = msq.field_242 limit 1),0) as field_1021 from app_entity_28 e where e.id>0 order by e.field_240 asc
Page: /index.php?module=items/listing
#0 includes/functions/database.php(87): mysqli_query(Object(mysqli), 'select sum(IFNU...')
#1 modules/items/components/calculate_fields_totals.php(39): db_query('select sum(IFNU...')
#2 modules/items/components/_listing_table.php(228): require('/var/www/u11402...')
#3 modules/items/actions/listing.php(206): require('/var/www/u11402...')
#4 index.php(20): require('/var/www/u11402...')
#5 {main}


у меня около 8300 записей в таблице клиентов.
Как бы мне улучшить запрос, чтобы вычисления не занимали так много времени и не вылетали?

Re: Подсчет количества элементов в другой сущности

Добавлено: 24 ноя 2025, 19:57
Fait
Перестаньте использовать поле MySQL запрос.
Я лично его нигде вообще не использую больше.
Вполне хватает поля MySQL формула

Re: Подсчет количества элементов в другой сущности

Добавлено: 24 ноя 2025, 20:00
Fait
Там делов то - посчитать количество посещений...

Код: Выделить всё

SELECT COUNT(*) FROM app_entity_27 WHERE field_242=[id]

Re: Подсчет количества элементов в другой сущности

Добавлено: 24 ноя 2025, 20:11
Fait
А вообще, для оперирования расчётами с большими объёмами данных, лучше сделать отдельный отчёт (лучше написать его, если сильны в программировании).
Стандартные инструменты, к сожалению, с большими объёмами данных работают очень медленно и вылетают.

Лучше сразу думайте в этом направлении, поверьте моему опыту, много времени сэкономите.
Мои отчёты, которые я делаю, обрабатывают (например) 20000 записей в 8 разных сущностях за 3-5 секунд.
Если что, пишите, придумаем что-нибудь)