Необходимо получить данные о продуктах из базы данных mysql

У меня вопрос. Я попытаюсь описать свою ситуацию:

Я получил установку wordpress, в которой я установил codeigniter. Все это хорошо, и я также получил доступ к базе данных. Теперь у меня есть плагин для WordPress, называемый Woocommerce. С помощью этого плагина вы можете хранить продукты и данные продукта в своей базе данных. Теперь мне нужно получить доступ к данным из моих продуктов woocommerce в приложении codeigniter.

Woocommerce хранит свои продукты следующим образом:

Все продукты входят в таблицу, называемую: wp_posts. В этой таблице указан столбец, называемый: post_type. Woocommerce идентифицирует сообщения как продукты, когда post_type установлен в продукт [duh!].

Теперь есть другая таблица wp_postmeta. В этой таблице все данные productData хранятся в 4 столбцах: 1. meta_id [идентификатор метауры] 2. post_id [идентифицирует себя в таблице wp_posts] 3. meta_key [туда будут входить несколько ключей, таких как: sale_price, add_price и т. д.] 4. meta_value [для каждого ключа есть значение.]

В таблице wp_postmeta мне нужно отсортировать все meta_keys со своими значениями, если продукт получил meta_key = '_ rentable', а meta_value = 'yes'. Поэтому, если это так, мне нужно получить все другие мета-ключи и значения, где post_id совпадает с арендованным продуктом. Надеюсь, я никого не смутил … На данный момент я получил этот запрос:

$sql = "SELECT p.id, p.post_title, p.guid, p.post_type, m.meta_key, m.meta_value FROM wp_posts p INNER JOIN wp_postmeta m WHERE p.id=m.post_id AND m.meta_key='_rentable' AND m.meta_value='yes' "; 

Это возвращает meta_key: _rentable и значение: yes .. Но мне также нужно получить цену этого продукта.

Related of "Необходимо получить данные о продуктах из базы данных mysql"

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

 $sql = "SELECT p.id, p.post_title, p.guid, p.post_type, m.meta_key, m.meta_value, meta_sp.meta_value as sale_price, meta_ap.meta_value as additional_price FROM wp_posts p INNER JOIN wp_postmeta m INNER JOIN wp_postmeta meta_sp ON p.id=meta_sp.post_id AND meta_sp.meta_key='sale_price' INNER JOIN wp_postmeta meta_ap ON p.id=meta_ap.post_id AND meta_ap.meta_key='additional_price' WHERE p.id=m.post_id AND m.meta_key='_rentable' AND m.meta_value='yes' ";