Ho trovato questa risposta, ma volevo espandere la domanda e non ho trovato nessuna soluzione qui in pila o tramite la ricerca su google.Parse Domain da un determinato URL in T-SQL
Substring domainname from URL SQL
Fondamentalmente il link qui sopra risolve il mio problema con un semplice URL parsing come "www.google.com", con il risultato di google.
Quello che sto cercando di espandere su questa è la soluzione dal link sopra non aiuta con url come 'www.maps.google.com' che restituisce solo mappe.
Quello che vorrei è restituirlo "google" dall'URL "www.maps.google.com" o restituire "esempio" da "www.test.example.com".
Se qualcuno ha una soluzione a questo, lo apprezzerei molto.
Update: Per essere più precisi mi avrà bisogno anche analisi su domini di secondo livello, ecc 'www.maps.google.com.au' tornare 'google'
Ecco la mia funzione SQL.
CREATE FUNCTION [dbo].[parseURL] (@strURL varchar(1000))
RETURNS varchar(1000)
AS
BEGIN
IF CHARINDEX('.', REPLACE(@strURL, 'www.','')) > 0
SELECT @strURL = LEFT(REPLACE(@strURL, 'www.',''), CHARINDEX('.',REPLACE(@strURL, 'www.',''))-1)
Else
SELECT @strURL = REPLACE(@strURL, 'www.','')
RETURN @strURL
END
Come ti vogliono trattare con [domini di secondo livello] (http://en.wikipedia.org/wiki/Second-level_domain), ad esempio, 'www.google.com.sg' o' bbc.co.uk'? – ig0774
Sì, ho appena aggiornato la mia domanda per includere domini di secondo livello. Vorrei anche restituire "google" da "www.google.com.sg" –