I am a small database novice, so pardon my naivety here. I've following sql statement:

SELECT DISTINCT  dbo.tb_user.familyName,
dbo.user_email.email FROM dbo.tb_user  
INNER JOIN dbo.user_email ON (dbo.tb_user.id = dbo.user_email.userID)

This returns records where their email is available.

What I must do is retrieve all of the records in order to see which customers do and don't have current email addressOres recorded within the db.

Is this accomplished?

Any hints/help much appreciated.

You should utilize a left outer join..

SELECT DISTINCT  dbo.tb_user.familyName,dbo.user_email.email 
FROM dbo.tb_user  LEFT OUTER JOIN dbo.user_email 
ON (dbo.tb_user.id = dbo.user_email.userID)

what you would like is known as an "outer join". Within an outer join an order the tables are listed matters, unlike the interior join you've listed. The 2nd one listed may be the outer one and can show NULL individuals cases when there's no match (a minimum of in MySQL, the only real place I have used outer joins to date.)

Choose DISTINCT dbo.tb_user.familyName, dbo.user_email.email FROM dbo.tb_user LEFT OUTER JOIN dbo.user_email ON (dbo.tb_user.id = dbo.user_email.userID)