UPDATE with Nested Query This is what i've tried 

UPDATE (SELECT * FROM music GROUP BY songalbum) 
SET albumID = (SELECT albumID FROM albumList GROUP BY album ) 
WHERE songalbum = albumList.album 


this give the error #1248 - Every derived table must have its own alias 

UPDATE music 
SET albumID = (SELECT albumID FROM albumList ) 
WHERE albumID = NULL

UPDATE music 
SET albumID = (SELECT albumID FROM albumList )
WHERE albumID = NULL 
  AND songalbum = (select album FROM albumList)


both run but have no affected rows.

I am trying to populate the albumID in the music table with the albumIDs that are in the albumList table.
If it is MySQL, you can do this with a simple join:

UPDATE music AS m
  JOIN albumList AS a
    ON m.songalbum = a.album 
SET m.albumID = a.albumID 
WHERE m.albumID IS NULL ; 




You could use a correlated subquery for this (similar to your 2nd attempt) but I wouldn't suggest it for MySQL. Less efficient and more complicated as it needs an additional condition in the WHERE clause to protect from updating music.albumID with null, for rows that have no related album:

UPDATE music AS m
SET albumID = (SELECT albumID FROM albumList AS a WHERE m.songalbum = a.album) 
WHERE albumID IS NULL
  AND EXISTS (SELECT 1 FROM albumList AS a WHERE m.songalbum = a.album) ;