Here's an implementation of the formula from Wikipedia, except that this will truncate fractional seconds because SQL only allows the modulo operator with ints.
DECLARE @geom geometry;
SET @geom = geometry::STGeomFromText('POINT(-83.255 32.567477)', 4326);
SELECT CASE WHEN @geom.STX < 0 then '-' ELSE '' END +
CAST(FLOOR(ABS(@geom.STX)) as varchar) + ' ' +
CAST(CAST(FLOOR(ABS(@geom.STX) * 60) AS INT) % 60 as varchar) + ''' ' +
CAST(CAST(FLOOR(ABS(@geom.STX) * 3600) AS INT) % 60 AS VARCHAR) + '"',
CASE WHEN @geom.STY < 0 then '-' ELSE '' END +
CAST(FLOOR(ABS(@geom.STY)) as varchar) + ' ' +
CAST(CAST(FLOOR(ABS(@geom.STY) * 60) AS INT) % 60 as varchar) + ''' ' +
CAST(CAST(FLOOR(ABS(@geom.STY) * 3600) AS INT) % 60 AS VARCHAR) + '"'
or for N, S, E, W rather than signs
DECLARE @geom geometry;
SET @geom = geometry::STGeomFromText('POINT(-83.255 32.567477)', 4326);
SELECT CAST(FLOOR(ABS(@geom.STX)) as varchar) + ' ' +
CAST(CAST(FLOOR(ABS(@geom.STX) * 60) AS INT) % 60 as varchar) + ''' ' +
CAST(CAST(FLOOR(ABS(@geom.STX) * 3600) AS INT) % 60 AS VARCHAR) + '"' +
CASE WHEN @geom.STX < 0 then ' W' ELSE ' E' END,
CAST(FLOOR(ABS(@geom.STY)) as varchar) + ' ' +
CAST(CAST(FLOOR(ABS(@geom.STY) * 60) AS INT) % 60 as varchar) + ''' ' +
CAST(CAST(FLOOR(ABS(@geom.STY) * 3600) AS INT) % 60 AS VARCHAR) + '"' +
CASE WHEN @geom.STY < 0 then ' S' ELSE ' N' END