get_results из пользовательской таблицы, ПРИСОЕДИНЕННОЙ к (ВНУТРЕННЕЕ СОЕДИНЕНИЕ таблицы пользователей и таблицы usermeta)

#php #mysql #wordpress

Вопрос:

Я пытаюсь запросить 3 таблицы в моей базе данных WP одновременно, используя чистые методы SQL JOIN и INNER JOIN .

У меня есть пользовательская таблица с именем License, в которой содержится идентификатор пользователя.

Я хочу начать запрос с таблицы лицензий и запросить там все столбцы, затем мне нужно получить данные из связанной записи пользователя в таблице WP_users и перенести ее в один и тот же массив, а затем добавить все прикрепленные мета-поля пользователя к идентификатору пользователя в тот же массив, в результате чего получается длинный массив, состоящий из записей, созданных из таблицы лицензий, связанной таблицы пользователей и связанных метаданных.

Я попытался выполнить следующий запрос:

 $results = $wpdb-gt;get_results(" SELECT $licenses_table.*,   $users_table.user_email,   DATE($users_table.user_registered)  FROM $licenses_table  JOIN (INNER JOIN {$wpdb-gt;usermeta} as m2 ON {$wpdb-gt;usermeta}.user_id = m2.user_id)",  ARRAY_A);  

Что я сделал не так?

Пожалуйста, помогите

Комментарии:

1. Я ничего не знаю PHP , но что JOIN (INNER JOIN значит, что вы должны использовать только INNER JOIN ?

2. Я пытаюсь выполнить какое-то вложенное объединение. Таким образом, я имею в виду, что пытаюсь присоединить одну таблицу к соединению таблицы пользователей с соответствующими данными, сохраненными в таблице usermeta.

3. тем не менее, вы сначала присоединяетесь к licentabe с помощью user_data, а когда вам нужно, как второй, также с предложением on

4. вы должны попытаться отладить свой запрос непосредственно в базе данных, прежде чем пытаться закодировать его на php для wordpress

5. Как правильно делать то, что я хочу в MYSQL?