SELECT uid, MAX(time) last_time FROM plays_new WHERE uid IN (' . implode($uids, ',') .') GROUP BY uid INSERT INTO artists (name, url) VALUES ("' . mysql_escape_string($track->artist) . '", "' . mysql_escape_string(substr($track->url, 0, strrpos($track->url, '/') - 2)) . '") SELECT id FROM artists WHERE name = "' . mysql_escape_string($track->artist) . '" INSERT INTO tracks (name, url) VALUES ("' . mysql_escape_string($track->name) . '", "' . mysql_escape_string($track->url) . '") SELECT id FROM tracks WHERE name = "' . mysql_escape_string($track->name) . '" INSERT INTO plays_new VALUES (' . (int)$row[0] . ', ' . (int)$track->date['uts'] . ', ' . (int)$artist_id . ', ' . (int)$track_id . ') SELECT s.total, a.name artist, a.url artist_url, t.name track, t.url track_url FROM (SELECT count(*) total, artist, track FROM plays_new WHERE time > ' . (time() - 24 * 60 * 60) . ' GROUP BY artist, track ORDER BY total DESC LIMIT 20) s INNER JOIN artists a ON (s.artist = a.id) INNER JOIN tracks t ON (s.track = t.id) SELECT s.total, a.name artist, a.url artist_url FROM (SELECT count(*) total, artist FROM plays_new WHERE time > ' . (time() - 24 * 60 * 60) . ' GROUP BY artist ORDER BY total DESC LIMIT 30) s INNER JOIN artists a ON (s.artist = a.id)