2017-11-20 8 views
1

mysql에서 출석 시스템을 만들고 싶습니다. 서로 다른 두 개의 날짜가 있다고 말하면됩니다. 2017년 12월 21일 및 2017년 12월 23일출석 날짜 별 MYSQL 참석

내가있는 경우

내 테이블 테스트는 다음과 같습니다. 이름 날짜 출석 코멘트

Person 1 2017-12-21 Yes comment 
Person 1 2017-12-23 Yes comment 
Person 2 2017-12-21 No comment 
Person 2 2017-12-23 Yes comment 

그리고 내가 원하는 결과가

-----2017-12-21----------------2017-12-23----------- 
-----Person 1 Yes comment ---- Person 1 Yes comment 
-----Person 2 NO comment ---- Person 2 Yes comment 
---------------------------------------------------- 

이 leftjoin이 작동합니다 생각하지만 나를 위해 열심히 사람을 도울 수있다? 감사합니다. .

+0

이 내용은 숙제 나 교육 문제에 호소하는 것으로 보입니다. 응답을 받기 위해 프로세스 코딩에 대한 모든 시도를 보여주십시오. – JJFord3

+0

스포츠 팀입니다. –

답변

0

기대하는 정확한 형식이 확실하지 않습니다. 테이블 구조는 다음과 같이

CREATE TABLE IF NOT EXISTS `attendance` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `name` varchar(255) NOT NULL, 
    `date` date NOT NULL, 
    `attendance` varchar(10) NOT NULL, 
    `comment` varchar(1023) NOT NULL, 
    PRIMARY KEY (`id`) 
); 

을 보인다면 당신은

SELECT date, 
GROUP_CONCAT(`name`, ' ', `attendance`, ' ', `comment`) AS attendance_info 
FROM `attendance` 
GROUP BY `date` 

은 아래의 형식으로 데이터를 추출하기 위해, 아래의 쿼리를 실행할 수 있습니다.

date  | attendance_info 

2017-12-21 | Person 1 YES Comment,Person 2 NO Comment 

2017-12-23 | Person 1 YES Comment,Person 1 YES Comment 
0

스포츠 팀용입니다. 나는 이것을 할 수있는 많은 방법을 테스트 한 지금이 데이터베이스를 가지고있다. Group_Contact는 제대로 작동하지 않습니다.

CREATE TABLE IF NOT EXISTS `attendance` (
     `playerid` int(11) NOT NULL, 
     `idnumber` int(11) NOT NULL AUTO_INCREMENT, 
     `name` varchar(255) NOT NULL, 
     `date` date NOT NULL, 
     `attendance` varchar(10) NOT NULL, 
     `comment` varchar(1023) NOT NULL, 
     PRIMARY KEY (`playerid`) 
); 

이것은 내가 PHP에서 나중에 사용하고자하는 결과입니다. (a = 출석 c = 의견)

attendance| Name  | a2017-12-21|c2017-12-21|a2017-12-23|c2017-12-23| 

      | Person 1 |  YES | Comment |  NO | Comment | 

      | Person 2 |  YES | Comment | YES | Comment |