내 DB에서 다음과 같이 나오는 날짜 필드가 있습니다. 추신 : 여기에 조인을 사용하여 날짜 테이블의 날짜를 가져 오는 쿼리가 많이 있습니다.MYSQL group_concat with 및
SELECT event,event_name,
GROUP_CONCAT(DATE_FORMAT(ed.date,'%b %e') ORDER BY ed.date SEPARATOR ',') as date2
FROM events ev
LEFT JOIN event_dates ed ON ev.eid=ed.eid
WHERE ev.yr='2013'
GROUP BY ev.eid
이렇게하면 많은 공간을 차지하는이 날짜 목록이 생성됩니다.
May 16,May 23,May 30,Jun 6,Jun 20
는 나는 여기
May 16,23,30,Jun 6,20
내가 노력 쿼리처럼보고 싶다. 하위 쿼리가 이벤트 ID를 알지 못하기 때문에 작동하지 않습니다. 내가 그것을 조인으로 변환해야 할 수도 있습니다 추측 ??)
SELECT DISTINCT ev.event_id,
GROUP_CONCAT(DISTINCT DATE_FORMAT(race_date,'%a') ORDER BY race_date
SEPARATOR ', ') as date1,
(SELECT GROUP_CONCAT(dm) FROM
(SELECT CONCAT(
MONTHNAME(race_date),
' ',
GROUP_CONCAT(DAY(race_date) ORDER BY race_date)
) as dm
FROM event_dates ed1 WHERE ed1.event_id=ev.event_id
GROUP BY MONTH(race_date))as t) as date2
FROM events ev
JOIN event_dates ed ON ev.event_id = ed.event_id AND ev.race_year = ed.race_year
GROUP BY event_id
'IF'는 쿼리와 함께 무엇을해야합니까? – bonCodigo
@bonCodigo : 아마도 월이 이미 포함되어 있다면 ... * – eggyal
@eggyal hmm ... :)'Month (date)에 의한 그룹'은 중복을 제거하지 않습니다 ... – bonCodigo