Условие по msq запросу, для сгрупированных пользователей

Все вопросы/проблемы по установке и использовании.
Pskargo@ya.ru
Сообщения: 7
Зарегистрирован: 05 апр 2024, 10:45
Имя: Лясковская Марина
Откуда: Ростов-на-Дону
Организация: ООО "Арго"

Условие по msq запросу, для сгрупированных пользователей

Сообщение Pskargo@ya.ru »

Есть ли какой то запрос по которому я смогу написать такое условие?
"выбрать только те задачи которые назначены на пользователей конкретного отдела". То есть если родительская запись назначенного = какому то отделу.
в сущности задачи у меня есть поле пользователи, а пользователи в свою очередь, сгруппированы в отделы.
Аватара пользователя
support
Техническая поддержка
Сообщения: 8996
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение support »

Это вам нужно список задач отфильтровать?
Pskargo@ya.ru
Сообщения: 7
Зарегистрирован: 05 апр 2024, 10:45
Имя: Лясковская Марина
Откуда: Ростов-на-Дону
Организация: ООО "Арго"

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение Pskargo@ya.ru »

Мне нужно взять информацию из числового поля параллельной сущности, с которой у этой сущности общая родительская сущность. И в текущей сущности у меня есть поле в которой я выбираю отдел (в котором сгруппированы пользователи) а в параллельной, выбираю пользователей, которые принадлежат к тому или иному отделу. Вот и поэтому у меня вопрос. как написать условие:
- выбрать в сущность ОТДЕЛ сумму чисел из сущности ЗАДАЧИ, если ЗАДЧИ и ОТДЕЛ имеют общую родительскую сущность ПАКЕТ и ЗАДАЧА назначена на пользователя принадлежащего к этому ОТДЕЛУ
Вложения
ПОЛЯ Сущности 64 ОТДЕЛ.docx
(138.37 КБ) 9 скачиваний
Аватара пользователя
support
Техническая поддержка
Сообщения: 8996
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение support »

ну, похоже вам нужно писать вложенные запросы. Примерно так:

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

select sum(field_X) form app_entity_Y where field_Z in (select id from app_entity_1 where parent_item_id=e.id)
Это не рабочий код, это просто пример.
app_entity_Y - это сущность задачи
field_Z - это поле где назначенный пользователь (я так понимаю он один)
(select id from app_entity_1 where parent_item_id=e.id) - тут выбираем всех пользователей которые назначены на отдел.

e.id - это текущий отел. Это если делать поле формулу в сущности Отдел где Пользователи родительская.
Pskargo@ya.ru
Сообщения: 7
Зарегистрирован: 05 апр 2024, 10:45
Имя: Лясковская Марина
Откуда: Ростов-на-Дону
Организация: ООО "Арго"

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение Pskargo@ya.ru »

Запрос :
тип поля "MySQL формула"
select sum(field_330) form app_entity_41 where field_326 in (select id from app_entity_1 where parent_item_id=e.id)

Результат:
Database Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'app_entity_41 where field_326 in (select id from app_entity_1 where parent_it...' at line 1
Query: select e.* , (e.field_703/e.field_700) as field_751, (select sum(field_330) form app_entity_41 where field_326 in (select id from app_entity_1 where parent_item_id=e.id)) as field_774 from app_entity_64 e where e.id>0 and e.parent_item_id='424' limit 0, 10
Page: /index.php?module=items/listing
#0 includes\functions\database.php(99): mysqli_query(Object(mysqli), 'select e.* , (e...')
#1 modules\items\actions\listing.php(207): db_query('select e.* , (e...', false)
#2 index.php(31): require('C:\\xampp\\htdocs...')
#3 {main}
Аватара пользователя
support
Техническая поддержка
Сообщения: 8996
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение support »

Вместо form нужно написать from :)
Pskargo@ya.ru
Сообщения: 7
Зарегистрирован: 05 апр 2024, 10:45
Имя: Лясковская Марина
Откуда: Ростов-на-Дону
Организация: ООО "Арго"

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение Pskargo@ya.ru »

Такой номер не прошел. Не собрал. Немного доработала.

select sum(msq.field_330) from app_entity_41 msq where msq.field_326 in (select id from app_entity_1 where msq.parent_item_id=e.id)
так почти сработало. В итоге сумма правильная, но по отделам он разбросал как то рандомно
Вложения
Результат.docx
(39.73 КБ) 5 скачиваний
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 746
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение Fait »

Pskargo@ya.ru писал(а): 09 апр 2024, 18:15 Такой номер не прошел. Не собрал. Немного доработала.

select sum(msq.field_330) from app_entity_41 msq where msq.field_326 in (select id from app_entity_1 where msq.parent_item_id=e.id)
так почти сработало. В итоге сумма правильная, но по отделам он разбросал как то рандомно
Напишите условия как-то понятнее.
Покажите скриншоты структуры, покажите скриншоты конфигуратора полей.
Пожалуйста, не в Ворде 🙏🏻. Очень неудобно.

У вас запрос простой, но мне не хватает данных для того, чтобы сказать решение.
Я могу вам помочь, но дайте пожалуйста все исходные данные.
nruslan2
Сообщения: 2414
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow
Контактная информация:

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение nruslan2 »

проще всего показать в демо базе все
Pskargo@ya.ru
Сообщения: 7
Зарегистрирован: 05 апр 2024, 10:45
Имя: Лясковская Марина
Откуда: Ростов-на-Дону
Организация: ООО "Арго"

Re: Условие по msq запросу, для сгрупированных пользователей

Сообщение Pskargo@ya.ru »

Доброго времени суток!
В том то моя и проблема, что я далека от программирования и поэтому мне очень трудно сформулировать правильно задачу. Все настолько плохо :? , что я даже не соображу как сюда скрины вставить без Ворда. И как показать все в демо базе для меня тоже загадка. С радостью всем поделюсь, если вам несложно написать как это сделать.
Ответить