actually, the date the user was created is in the users table, which as it is already in your query is simple to add e.g.
SELECT
TOP (100) PERCENT Users.LastName AS [Last Name], Users.FirstName AS [First Name], Users.Username, Address.PropertyValue AS Address,
City
.PropertyValue AS City, State.PropertyValue AS State, Zip.PropertyValue AS Zip, Phone.PropertyValue AS [Phone Num], Users.Email, Users.CreatedOnDate
FROM
Users INNER JOIN
UserProfile
AS Address ON Users.UserID = Address.UserID AND Address.PropertyDefinitionID = '26' LEFT OUTER JOIN
UserProfile
AS City ON Users.UserID = City.UserID AND City.PropertyDefinitionID = '27' LEFT OUTER JOIN
UserProfile
AS State ON Users.UserID = State.UserID AND State.PropertyDefinitionID = '28' LEFT OUTER JOIN
UserProfile
AS Zip ON Users.UserID = Zip.UserID AND Zip.PropertyDefinitionID = '30' LEFT OUTER JOIN
UserProfile
AS Phone ON Users.UserID = Phone.UserID AND Phone.PropertyDefinitionID = '31'
The date in the UserPortals table is when that user was associated with that portal e.g. in a multi-portal installation a user can be associated with multiple portals by registering with the same username/password combination (or alternatively using the SiteGroups enhancement in the PE/EE editions). Obviously I could register for someportal.com today and for someotherportal.com (both being parent portals) later this month, so if you want those values you will need to join to the UserPortals table.The query would look like this:
SELECT
TOP (100) PERCENT Users.LastName AS [Last Name], Users.FirstName AS [First Name], Users.Username, Address.PropertyValue AS Address,
City
.PropertyValue AS City, State.PropertyValue AS State, Zip.PropertyValue AS Zip, Phone.PropertyValue AS [Phone Num], Users.Email, Users.CreatedOnDate,
UserPortals
.CreatedDate
FROM
Users INNER JOIN
UserProfile
AS Address ON Users.UserID = Address.UserID AND Address.PropertyDefinitionID = '26' INNER JOIN
UserPortals
ON Users.UserID = UserPortals.UserId LEFT OUTER JOIN
UserProfile
AS City ON Users.UserID = City.UserID AND City.PropertyDefinitionID = '27' LEFT OUTER JOIN
UserProfile
AS State ON Users.UserID = State.UserID AND State.PropertyDefinitionID = '28' LEFT OUTER JOIN
UserProfile
AS Zip ON Users.UserID = Zip.UserID AND Zip.PropertyDefinitionID = '30' LEFT OUTER JOIN
UserProfile
However you should be aware that your first query is portal-agnostic i.e. it is working against all the user records and not filtered by the portalID. As such the final query I've given you will give a row for each portal the user is a member of which the createdate of each. If you want to filter for your portal you'll have to add a where clause such as "where UserPortals.PortalID=@portalid"
AS Phone ON Users.UserID = Phone.UserID AND Phone.PropertyDefinitionID = '31'