Я добровольно работаю в ассоциации, которая использует веб-сайт, поддерживаемый drupal. Я не очень хорошо разбираюсь в пользовательской структуре базы данных, но я пытался найти адреса для «бизнес» пользователей, используя SQL запросы. Я могу легко найти адреса для обычных пользователей в "field_data_field_postal_address". Я предполагаю, что они используют собственный модуль и форму для хранения адресов, но я не могу найти таблицу или записи для пользователей.
Для обычных пользователей я пишу следующее, и оно отлично работает.
SELECT *
FROM users u
JOIN profile p
ON u.uid = p.uid
JOIN field_data_field_postal_address a
ON a.entity_id = p.pid
Для предприятий я использую тот же запрос, но мне нужно присоединиться к пользовательской таблице, чтобы отфильтровать только для предприятий, и она ничего не возвращает.
SELECT * FROM users
INNER JOIN profile ON users.uid = profile.uid
INNER JOIN field_data_field_postal_address ON profile.pid = field_data_field_postal_address.entity_id
inner join field_data_field_is_business on field_data_field_is_business.entity_id = profile.pid
Мне кажется, что я либо отсутствует таблица сопоставления между бизнесом и пользователями, либо имеется отдельная таблица, в которой расположены служебные адреса. Мне было просто интересно, узнает ли кто-нибудь какой-то тип шаблона в таблице, который мог бы указать мне правильное направление. Спасибо.