Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Wordpress SQL:lấy danh mục bài đăng và các thẻ

Như đã lưu ý trong các nhận xét, tôi đã bao gồm một hàm tổng hợp, nhưng không có mệnh đề "nhóm theo".

Bây giờ điều này có vẻ hoạt động (chỉ cần thêm GROUP BY dòng):

SELECT
    p.id,
    p.post_name,
    c.name,
    GROUP_CONCAT(t.`name`)
FROM wp_posts p
JOIN wp_term_relationships cr
    on (p.`id`=cr.`object_id`)
JOIN wp_term_taxonomy ct
    on (ct.`term_taxonomy_id`=cr.`term_taxonomy_id`
    and ct.`taxonomy`='category')
JOIN wp_terms c on
    (ct.`term_id`=c.`term_id`)
JOIN wp_term_relationships tr
    on (p.`id`=tr.`object_id`)
JOIN wp_term_taxonomy tt
    on (tt.`term_taxonomy_id`=tr.`term_taxonomy_id`
    and tt.`taxonomy`='post_tag')
JOIN wp_terms t
    on (tt.`term_id`=t.`term_id`)
GROUP BY p.id


+---------------+----------+----------------+
| post_id       | category | tags           |
|---------------+----------+----------------+
| 213           | news     | tag1,tag2,tag3 |
+---------------+----------+----------------+
| 216           | whatever | tag2,tag3      |
+---------------+----------+----------------+

Cảm ơn Dâu!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ứng dụng web [] dường như đã bắt đầu một chuỗi có tên [Chuỗi dọn dẹp kết nối bị bỏ rơi] com.mysql.jdbc.AbandonedConnectionCleanupThread

  2. Cập nhật H2 với tham gia

  3. Tại sao cú pháp đã cho hợp lệ trong mysql?

  4. SQL phân tách hàng được phân tách bằng dấu phẩy

  5. Làm cách nào để xóa tất cả các bản ghi trùng lặp trong bảng MySQL mà không có bảng tạm thời