Я видел это сообщение , которое, наконец, может помочь с моей проблемой, но оказывается, что оно не работает для моего случая.
Если я не включил GROUP BY в свой запрос, я получит это:
Form Name : Account Registration
User Details : 11/27/1987
Form Name : Account Registration
User Details : test1@gmail.com
Form Name : Account Registration
User Details : username_test
Form Name : Account Registration
User Details : 11/27/1999
Form Name : Account Registration
User Details : +6582734752
Form Name : Account Registration
User Details : Teamname1
Form Name : Account Registration
User Details : Team1
Form Name : Account Registration
User Details : Teamname2
Form Name : Account Registration
User Details : Team2
Form Name : Event Registration
User Details : +862934829103
Form Name : Event Registration
User Details : testing@test.com
Form Name : Christmas Event Registration
User Details : Member1
Form Name : Christmas Event Registration
User Details : Member2
Form Name : Christmas Event Registration
User Details : Member3
Form Name : Christmas Event Registration
User Details : Member4
Form Name : Christmas Event Registration
User Details : TeamAlpha
Form Name : Christmas Event Registration
User Details : teamalpha@gmail.com
Но если я включу GROUP BY в свой запрос, я получу это:
Form Name : Account Registration
User Details : 11/27/1987
Form Name : Christmas Event Registration
User Details : Member1
Form Name : Event Registration
User Details : +862934829103
Вот чего я хочу достичь:
Form Name : Account Registration
User Details : 11/27/1987, test1@gmail.com, username_test
User Details : .....
User Details : .....
Form Name : Event Registration
User Details : 11/27/1999, +6582734752
User Details : .....
User Details : .....
Form Name : Christmas Event Registration
User Details : Member1, Member2, Member3, Member4,TeamAlpha, teamalpha@gmail.com
User Details : .....
User Details : .....
Пример данных:
CREATE TABLE Table1 (
`form_id` INTEGER,
`form_name` VARCHAR(28)
);
INSERT INTO Table1
(`form_id`, `form_name`)
VALUES
('3', 'Account Registration'),
('5', 'Event Registration'),
('6', 'Christmas Event Registration');
CREATE TABLE Table2 (
`form_id` INTEGER,
`submission_id` INTEGER,
`value` VARCHAR(19)
);
INSERT INTO Table2
(`form_id`, `submission_id`, `value`)
VALUES
('3', '1', '11/27/1987'),
('3', '1', 'test1@gmail.com'),
('3', '1', 'username_test'),
('3', '2', '11/27/1999'),
('3', '2', '+6582734752'),
('3', '2', 'Teamname1'),
('3', '2', 'Team1'),
('3', '2', 'Teamname2'),
('3', '2', 'Team2'),
('5', '3', '+862934829103'),
('5', '3', 'testing@test.com'),
('6', '4', 'Member1'),
('6', '4', 'Member2'),
('6', '4', 'Member3'),
('6', '4', 'Member4'),
('6', '4', 'TeamAlpha'),
('6', '4', 'teamalpha@gmail.com');
DEMO на SQLFiddle
SELECT
f.form_name, s.value
FROM
Table1 f
JOIN
Table2 s
ON f.form_id = s.form_id
GROUP BY
f.form_name;
Надеюсь, на этот раз я выполнил требования по публикации вопроса. Мне действительно нужна помощь в этом, так как я застрял на этом этапе очень долго, а также я впервые использую функцию соединения.
Заранее спасибо, ребята.