Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Все вопросы/проблемы по установке и использовании.
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение alcompstudio »

Добрый день!

Есть 2 сущности:
1. Группа компаний
2. Компании.

В Компаниях есть поле сущность аякс [9624] с выбором из сущности Группа компаний. Т.е. некая "привязка" Компании к Группе компаний. В каждой записи Компания хочу вывести список записей через "Список записей по MySQL запросу" где отобразятся все Компании принадлежащий к одной группе (группа выбранная в поле [9624]).

Пробовал делать условие выборки "field_9624 = [9624]", но оно корректно работает, если поле [9624] непустое. Если же оно пустое, то система будет выводить в таких записях список всех-всех записей, в которых тоже данное поле не заполнено. Т.е. будет выполняться условие "выводить список если пусто=пусто". Как этого избежать, сделать проверку на заполненное поле (непустое), чтобы если поле пустое, то просто игнорировалась выборка?
Группа_компаний_список_по_mysql_запросу.jpg
Пытался делать доп условия

field_9624 is not null and field_9624 = [9624]
field_9624 is not empty and field_9624 = [9624]
field_9624 >0 and field_9624 = [9624]
field_9624 !=0 and field_9624 = [9624]

[9624] is not null and field_9624 = [9624]
[9624] is not empty and field_9624 = [9624]
[9624] >0 and field_9624 = [9624]
[9624] !=0 and field_9624 = [9624]

В общем, перебрал различные комбинации, но в результате на странице записи (если поле 9624 не заполнено) - ошибка... Как правильно построить условие, чтобы выводить список только с заполненным полем [9624] ?
tehnos
Сообщения: 224
Зарегистрирован: 13 сен 2021, 17:10
Имя: Евгений
Откуда: Алушта

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение tehnos »

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

`field_9624` = [9624] AND IFNULL(`field_9624`, null)
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение alcompstudio »

tehnos писал(а): 04 мар 2024, 18:24

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

`field_9624` = [9624] AND IFNULL(`field_9624`, null)
Спасибо за подсказку, но тоже не работает...
syrorybin
Инвестор
Инвестор
Сообщения: 341
Зарегистрирован: 14 ноя 2023, 09:19
Имя: Роман
Откуда: Екатеринбург

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение syrorybin »

Пока даже не сталкивался с задачами по MySQL запросу, поэтому сомневаюсь, что помогу, однако на безрыбье..

Как понял, нужно просто отображать список определенных записей из другой сущности.
Можно попробовать при копировании с типом Сущность, выпадающий список (ajax), копировать значения в рамках Полей.
Таким образом при создании записи, поля буду заполняться и отображаться.
Только со старыми записями в сущности нужно будет пообновлять значения, сами понимаете.
nruslan2
Сообщения: 2435
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение nruslan2 »

пропишите именно одно общее условия для IF, без всяких и/или))
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение alcompstudio »

syrorybin писал(а): 07 мар 2024, 08:16 Пока даже не сталкивался с задачами по MySQL запросу, поэтому сомневаюсь, что помогу, однако на безрыбье..

Как понял, нужно просто отображать список определенных записей из другой сущности.
Можно попробовать при копировании с типом Сущность, выпадающий список (ajax), копировать значения в рамках Полей.
Таким образом при создании записи, поля буду заполняться и отображаться.
Только со старыми записями в сущности нужно будет пообновлять значения, сами понимаете.
Спасибо, но это не то немного. Т.к. нужно выводить просто список записей, другие данные не нужны. Логика в том, что записи должны выводиться в каждой записи той же сущности (если я понятно выразился). Но проблема в том, что поле может быть заполнено, а может быть не заполнено, поэтому система "дает сбой", т.к. пытается вывести все "несвязанные" таким образом записи.
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение alcompstudio »

nruslan2 писал(а): 07 мар 2024, 08:19 пропишите именно одно общее условия для IF, без всяких и/или))
Какое, например? ) Я пробовал по всякому, проблема именно в "пустоте" поля. Постом выше озвучил ее - просто система пытается вывести в одной записи (там, где поле сущность аякс не заполнено, т.е. нет ID для связки) все имеющиеся такие же записи с незаполненным полем сущность аякс - т.к. не видит конкретного ID, чтобы была установлена связь. И вероятно "думает", что пустое значение это и есть некий ID (а он есть у множества таких записей), вот и выводит по этой "пустоте" все такие же записи. И казалось бы в формуле должно работать эта проверка на исключение незаполненного поля, но вот что-то я не знаю, как это условие прописать...
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1197
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение Fait »

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

e.field_9624="[9624]" and e.field_9624>0
Вот этот код вставьте в условие.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 1197
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич
Контактная информация:

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение Fait »

Погодите-ка, только сейчас увидел...
У вас ID поля 9624? :o
Боюсь представить, сколько же там у вас таблиц в базе! :shock:
Я за 3 года максимум до ID поля 3146 дошёл :)
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Список записей по MySQL запросу - как вывести записи по "групповому" полю?

Сообщение alcompstudio »

Fait писал(а): 10 мар 2024, 23:39 Погодите-ка, только сейчас увидел...
У вас ID поля 9624? :o
Боюсь представить, сколько же там у вас таблиц в базе! :shock:
Я за 3 года максимум до ID поля 3146 дошёл :)
Да, это не последний ID. База очень большая, более 100 таблиц. В таблицах от 10 до 200 полей (больше MySQL "не вывозит"...). Так, что скоро будет "юбилей" - 10000-е ID :lol:
Ответить