2017-05-09 1 views
0

나는 테이블에서만 월 및 연도를 얻으려고 작성하고 목록에 표시 할에서만 다른 달과 날짜하기 :내가 이런 식으로 할 관리했습니다 테이블

$retrieve_data = $wpdb->get_results("SELECT 
              MONTHNAME(m_post_date) AS month, 
              YEAR(m_post_date) AS year) 
              FROM $table_name "); ?> 

을 그리고

  <li><?php echo $retrieved_data->year.' '.$retrieved_data->month; ?></li> 

난 그냥 연도와 월이 동일한 경우 dublicated 기록을 표시하지 않도록 지금해야 나중에 루프에서이 방법을 표시합니다. 예를 들어 나는

2017 May 
2017 May 

의 웹 사이트가 하나의 항목 만 표시해야합니다 때. 별개의 키워드에 대해 생각해 봤지만 원하는 방식으로 작동하지 않습니다.

btw wordpress에 있지만 문제가되지 않습니다.

+1

조회 GROUP BY를. 그런 다음 그룹 by by 및 order by 절을 선택 항목에 추가하십시오. –

+0

'GROUP BY year, month'를 추가하십시오. –

+0

성능 문제는 제쳐두고, DISTINCT는 실제로 찾고있는 용어입니다. 출력 루프에서도 효과적으로 처리 할 수 ​​있습니다. – Strawberry

답변

1

당신은 GROUP BY를 사용할 수 있습니다

SELECT MONTHNAME(m_post_date) AS month, 
     YEAR(m_post_date) AS year 
FROM $table_name 
GROUP BY MONTHNAME(m_post_date), YEAR(m_post_date); 
관련 문제