sql >> データベース >  >> RDS >> Mysql

すべての製品、カテゴリ、メタデータを取得するSQLクエリwoocommerce / wordpress

    object_idがありました term_taxonomy_idに参加する 意味がありませんでした。

    これが私がどうあるべきかを考える方法です-警告:私はwpデータベースにクエリを実行したことがなく、ドキュメントを参照していました。

    SELECT 
      p.ID,
      p.post_title,
      `post_content`,
      `post_excerpt`,
      t.name AS product_category,
      t.term_id AS product_id,
      t.slug AS product_slug,
      tt.term_taxonomy_id AS tt_term_taxonomia,
      tr.term_taxonomy_id AS tr_term_taxonomia,
      MAX(CASE WHEN pm1.meta_key = '_price' then pm1.meta_value ELSE NULL END) as price,
      MAX(CASE WHEN pm1.meta_key = '_regular_price' then pm1.meta_value ELSE NULL END) as regular_price,
      MAX(CASE WHEN pm1.meta_key = '_sale_price' then pm1.meta_value ELSE NULL END) as sale_price,
      MAX(CASE WHEN pm1.meta_key = '_sku' then pm1.meta_value ELSE NULL END) as sku 
    FROM wp_posts p 
    LEFT JOIN wp_postmeta pm1 ON pm1.post_id = p.ID
    LEFT JOIN wp_term_relationships AS tr ON tr.object_id = p.ID
    JOIN wp_term_taxonomy AS tt ON tt.taxonomy = 'product_cat' AND tt.term_taxonomy_id = tr.term_taxonomy_id 
    JOIN wp_terms AS t ON t.term_id = tt.term_id
    WHERE p.post_type in('product', 'product_variation') AND p.post_status = 'publish' AND p.post_content <> ''
    GROUP BY p.ID,p.post_title
    


    1. DjangoにUnicode文字列を保存するときにMySQLの誤った文字列値エラー

    2. 2つの行間の時間差を計算する

    3. SQLCASEステートメント

    4. PDOステートメントが機能しない