외부 응용 프로그램에서 범주별로 가장 최근에 게시 된 5 개의 WordPress 게시물을 가져오고 싶습니다. 이러한 응용 프로그램은 ASP.NET에서 빌드되므로 EF를 사용하여 MySQL-Database에서 직접 데이터를 가져 오려고합니다. EF에서 WordPress 관계를 구축하는 것은 끔찍한 것처럼 보입니다. 따라서 가장 최근 게시물에 대한 카테고리 세부 정보와 정보를 보유한 사용자 정의 모델을 만들고 싶습니다.카테고리에서 가장 최근 5 개의 WordPress 게시물
Select terms.term_id As Id, terms.name As Name, terms.slug As SeoName, Group_Concat(relations.object_id) As PostId, taxonomy.count As Count, taxonomy.parent As ParentId,
(
Select post_title
From wp_posts
Where ID In(Group_Concat(relations.object_id))
Order By post_date Desc
) As PostTitle
From wp_terms terms, wp_term_taxonomy taxonomy, wp_term_relationships relations
Where terms.term_id = taxonomy.term_id
And relations.term_taxonomy_id = taxonomy.term_taxonomy_id
And taxonomy.taxonomy = 'category'
Group By terms.term_id
내 생각은 내가 5를 얻을 Having Count(terms.term_id) = 5
을 추가했다 :
Having
이 없으면 가장 최근 게시물이있는 범주 당 한 줄을 얻습니다.
그룹핑을 제거하지 않고 MySQL이 카테고리 당 5 개의 행을 반환하도록하려면 어떻게해야합니까?
가 그럼 난 (짧은) 데이터베이스에서 다음과 같은 결과를 얻으려면
- CATA
- CatB
- CATC :
내가 나무 종류가 있다고 가정하자
CategoryId | CategoryName | NewestPostTitle 1 | CatA | Newest post in CatA 1 | CatA | Second newest post in CatA ... 2 | CatB | Newest post in CatB 2 | CatB | Second newest post in CatB ... 3 | CatC | Newest post in CatC 3 | CatC | Second newest post in CatC
원하는 경우이 간단한 두 단계 과정을 따르십시오. 1. 아직 수행하지 않은 경우 문제를보다 쉽게 복제 할 수 있도록 적절한 CREATE 및 INSERT 문 (및/또는 sqlfiddle)을 제공하십시오 . 2. 아직 수행하지 않았다면 1 단계에서 제공된 정보와 일치하는 원하는 결과 세트를 제공하십시오. – Strawberry
왜 카테고리를 반복하지 않고 간단한 WP_Query (또는 get_posts()를 사용하여 각 반복마다 게시물을 쿼리하지 않습니까?))? –