There is a table users , in it a cell date type - DATETIME.

In this table I store users ( nick ), I want to output in the cycle all registered users by day. For example, to get this:

28.07.2018 : user1, user2, user3

29.07.2018 : user4, user5

30.07.2018 : user6, user7

And so on.

The cycle in which I bring all users:

 $db = $mysqli->query("SELECT * FROM `users` ORDER BY `date`"); if ($db) while ($us = $db->fetch_assoc()) { ... } 

I would be grateful for the help.

    1 answer 1

    Link:

    How to use GROUP BY to concatenate strings in MySQL?

    Using:

     create table `test` ( `date` date, `nick` varchar(10) ) 
     insert into `test` (`date`,`nick`) values ('2018-07-28', 'user1'), ('2018-07-28', 'user2'), ('2018-07-28', 'user3'), ('2018-07-29', 'user4'), ('2018-07-29', 'user5'), ('2018-07-30', 'user6'); 
     SELECT `Date`, GROUP_CONCAT(`nick` SEPARATOR ' ') `nicks` FROM `test` GROUP BY `Date` 
     Date |  nicks            
     : --------- |  : ----------------
     2018-07-28 |  user1 user2 user3
     2018-07-29 |  user4 user5      
     2018-07-30 |  user6            
    

    db <> fiddle here