Я пытаюсь настроить запрос к базе данных студентов веб-сайта, но мне трудно собрать полный запрос. Это будет описание данных, которые должны быть получены из таблиц:
# Student data
TABLE: wp_users
Student ID -> column: ID
Student name -> column: display_name
Student email -> column: user_email
Campaign Url -> column: user_url
# Course data
TABLE: wp_comments
Student ID -> column: user_id
Course ID -> column: comment_post_ID
Course status -> column: comment_approved
in-progress
complete
Show course type status -> column: comment_type 'sensei_course_status'
Record ID -> column: comment_ID
TABLE: wp_commentmeta
Registration date -> column: meta_key 'start' |
Note percentage -> column: meta_key 'percent' | meta_value (result of the meta_key column)
Assisted classes -> column: meta_key 'complete' |
Record ID -> column: comment_id
# Purchase Data
TABLE: wp_post
for products, coupons and orders.
Order Id -> Column: ID
Order date -> column: post_modified_gmt
record type -> column: post_type 'shop_order'
Order status -> column: post_status
TABLE: wp_postmeta
Order Id -> column: post_id
User Id -> column: meta_value
meta_key = '_customer_user'
TABLE: wp_woocommerce_order_items
coupon -> column: order_item_name
order_item_type = 'coupon'
Product name -> column: order_item_name
order_item_type = 'line_item'
Order id -> column: order_id
record for product id -> column: order_item_id
TABLE: wp_woocommerce_order_itemmeta
record for the product id -> column: order_item_id
Product id -> column: meta_value
meta_key = '_product_id'
Я смог настроить запрос, используя только данные студента и курс, но вторую часть я не могу include
SELECT wu.display_name,
wc.comment_post_ID,
wc.comment_type,
wc.comment_approved,
wm.meta_key,
wm.meta_value
FROM wp_comments wc,
wp_users wu,
wp_commentmeta wm
WHERE wc.comment_type = 'sensei_course_status'
AND wc.user_id = wu.ID
AND wm.comment_id = wc.comment_ID
Как я могу включить данные о покупке (идентификатор заказа, название продукта и купон, использованный для покупки)?
Я пытался использовать внутреннее Присоединение к запросу работает, но не возвращает любые данные. Что я делаю не так?
SELECT wu.ID,
wu.display_name,
wc.comment_post_ID,
wc.comment_approved,
wcm.meta_key,
woi.order_id,
woi.order_item_name
FROM wp_posts wpo
INNER JOIN wp_users wu ON wu.ID = wpo.ID
INNER JOIN wp_comments wc ON wc.user_id = wu.ID
INNER JOIN wp_commentmeta wcm ON wcm.comment_id = wc.comment_ID
AND wcm.meta_value = wcm.meta_key
INNER JOIN wp_postmeta wpm ON wpm.post_id = wpo.ID
AND wpm.meta_value = wu.ID
AND wpm.meta_key = '_customer_user'
INNER JOIN wp_woocommerce_order_items woi ON woi.order_id = wpo.ID
INNER JOIN wp_woocommerce_order_itemmeta wom ON wom.order_item_id = woi.order_item_id
AND wom.meta_key = '_product_id'