Как я могу настроить этот запрос? - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь настроить запрос к базе данных студентов веб-сайта, но мне трудно собрать полный запрос. Это будет описание данных, которые должны быть получены из таблиц:

# 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'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...