Como montar essa consulta SQL?
-
Olá pessoa, preciso de ajuda estou “quebrando a cabeça” para tentar entender como posso melhorar essa query, primeiro essas sãos as tabelas que quero captar os dados:
Para dados do aluno +--------------------------------+ | wp_users | +----+------------+--------------+ | ID | user_email | display_name | +----+------------+--------------+ | | | | +----+------------+--------------+ Para dados do curso +----------------------------------------------+ | wp_commentmeta | +---------+------------+----------+------------+ | meta_id | comment_id | meta_key | meta_value | +---------+------------+----------+------------+ | | | | | +---------+------------+----------+------------+ +-----------------------------------------------------------+ | wp_comments | +------------+-----------------+------------------+---------+ | comment_ID | comment_post_id | comment_approved | user_id | +------------+-----------------+------------------+---------+ | | | | | +------------+-----------------+------------------+---------+ Para dados da associação +----------------------------+ | wp_pmpro_membership_levels | +-------------+--------------+ | id | name | +-------------+--------------+ | | | +-------------+--------------+ +-------------------------------------------------------------+ | wp_pmpro_memberships_users | +----+---------+---------------+--------+-----------+---------+ | id | user_id | membership_id | status | startdate | enddate | +----+---------+---------------+--------+-----------+---------+ | | | | | | | +----+---------+---------------+--------+-----------+---------+ para dados da compra +--------------------------------------------------------------+ | wp_woocommerce_order_items | +---------------+-----------------+-----------------+----------+ | order_item_id | order_item_name | order_item_type | order_id | +---------------+-----------------+-----------------+----------+ | | | | | +---------------+-----------------+-----------------+----------+ +-------------------------------------------------+ | wp_woocommerce_order_itemmeta | +---------+---------------+----------+------------+ | meta_id | order_item_id | meta_key | meta_value | +---------+---------------+----------+------------+ | | | | | +---------+---------------+----------+------------+ e parece que tudo está ligado com a tabela de posts, pois tenho informações de cursos e compras. +-------------------------------------------+ | wp_posts | +----+------------+-------------+-----------+ | ID | post_title | post_status | post_type | +----+------------+-------------+-----------+ | | | | | +----+------------+-------------+-----------+ +-------------------------------------------+ | wp_postmeta | +---------+---------+----------+------------+ | meta_id | post_id | meta_key | meta_value | +---------+---------+----------+------------+ | | | | | +---------+---------+----------+------------+
essa era a consulta que estava tentando:
SELECT wu.ID, wc.user_id, wu.display_name, wpo.ID as 'ID C e L', wpo.post_title as Curso, wpo.post_modified_gmt, wpo.post_type as Tipo, wc.comment_ID, wc.comment_post_ID, wc.comment_type, wcm.comment_id, wcm.meta_key, wcm.meta_value, woi.order_item_id, woi.order_item_name, woim.meta_key, woim.meta_value FROM wp_posts wpo LEFT JOIN wp_postmeta wpm ON wpo.ID = wpm.post_id LEFT JOIN wp_comments wc ON wpo.ID = wc.comment_post_ID and wc.comment_type = 'sensei_course_status' LEFT JOIN wp_commentmeta wcm ON wc.comment_ID = wcm.comment_id LEFT JOIN wp_users wu ON wc.user_id = wu.ID LEFT JOIN wp_usermeta wum ON wu.ID = wum.user_id LEFT JOIN wp_woocommerce_order_items woi ON wpo.ID = woi.order_id LEFT JOIN wp_woocommerce_order_itemmeta woim ON woi.order_item_id = woim.order_item_id WHERE wpo.post_type = 'course' OR wpo.post_type = 'shop_order' ORDER BY <code>wpo</code>.<code>ID</code> ASC
Eu até consigo dados separados em outras consultas mas isso foi o mais perto que andei de mostrar tudo, gostaria de mostrar se o usuário comprou um produto, que cupom ele utilizou que curso ele se matriculou e qual a sua associação ativa. Como eu disse consigo todos os dados mas em consultas separadas mas parece que estou emperrada em algo a ver com wp_posts, pois vejo que preciso de três post_type (‘course’, ‘shop_order’ e ‘shop_coupon’ ) –
- O tópico ‘Como montar essa consulta SQL?’ está fechado para novas respostas.