Mysql 如何将表作为逗号分隔的字符串联接?
这是我目前的问题:Mysql 如何将表作为逗号分隔的字符串联接?,mysql,sql,database,solr,Mysql,Sql,Database,Solr,这是我目前的问题: SELECT *, JOIN users u JOIN user_addresses ua ON u.id = ua.userId_fk JOIN timeSlots ts ON u.id = ts.userId_fk 我在Solr中使用它来索引用户。时间段如下所示: ID | userId_fk | dayOfWeek | startTime | endTime 1 100 MONDAY 10:00 12:00 如何将
SELECT *,
JOIN users u
JOIN user_addresses ua ON u.id = ua.userId_fk
JOIN timeSlots ts ON u.id = ts.userId_fk
我在Solr中使用它来索引用户。时间段如下所示:
ID | userId_fk | dayOfWeek | startTime | endTime
1 100 MONDAY 10:00 12:00
如何将这些时隙数据连接为逗号分隔列表或类似的内容,以便将其解析为JavaScript对象
期望输出的示例:
id | address | userName | timeslots
1 123 ave someName MONDAY,10:00,12:00 TUESDAY,12:00,18:00
希望这会有所帮助
SELECT u.id , ua.address , userName , timeslots, concat(dayOfWeek, ',' ,startTime, ',' ,endTime ) timeslots
JOIN users u
JOIN user_addresses ua ON u.id = ua.userId_fk
JOIN timeSlots ts ON u.id = ts.userId_fk
你也可以把它分组。如果要将多个时间段与分隔的空间组合在一起
SELECT u.id , ua.address , userName , timeslots, group_concat(concat(dayOfWeek, ',' ,startTime, ',' ,endTime ) separator ' ') as timeslots
JOIN users u
JOIN user_addresses ua ON u.id = ua.userId_fk
JOIN timeSlots ts ON u.id = ts.userId_fk
group by userName
对于mysql,您可以使用
我不明白你以逗号分隔的列表形式加入是什么意思。。。你到底想做什么?你用什么来执行mysql?您应该能够使用PHP(或ASP,或其他任何工具)将结果转储到字符串中,希望“期望的输出”永远不会将结果转储到表中