You will want to have 1 row per user_ID so you can easily access all the data.
e.g. for your gameID 5002947 (row11) this needs to be split into the following:
id setup_id user_ID
5002947 997 563749
5002947 997 500243
5002947 997 536271
...
You have two options. Create a complex SQL query that will handle this (I can't supply this unfortunately but I'm sure others could) or use php.
PHP method
Select all rows and explode the userID into an array.
loop through this array and insert back into the database.
Depending on the number of rows and userIDs you have this may take a while to execute.
e.g.
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
$query = 'SELECT * FROM table';
$data = mysqli_query($mysqli, $query);
while($row = mysqli_fetch_array($data))
{
$data[] = array("gameid"=>$row['game_ID'], "setupid"=>$row['setup_ID'],"userid"=>str_getcsv($row['user_ID'])); /*And all your other information*/
}
for($i=0; $i<count($data); $i++) {
$gameid = $data[$i]['gameid'];
$setupid = $data[$i]['setupid'];
/*Other info you need*/
for ($x=0; $x<count($data[$i]['userid']);$x++) {
$userid = $data[$i]['userid'][$x];
if ($stmt = $mysqli->prepare("INSERT INTO newtable (game_ID, setup_ID, user_ID) VALUES (?, ?, ?)")) {
$stmt->bind_param('iii', $gameid ,$setupid ,$userid);
if (!$stmt->execute()) {
$stmt->close();
}
}
}
}