Using MS SQL Server syntax for CHARINDEX and SUBSTRING, you can do something like ...
(Intentionally overly split to make the step obvious.)
WITH
url_start AS
(
SELECT
*,
CASE WHEN LEFT(myURL, 4) = 'www.' THEN 4 ELSE 1 END AS d_start
FROM
myTable
)
,
url_end
AS
(
SELECT
*,
CASE WHEN
CHARINDEX('.', myURL, d_start) = 0
THEN
LEN(myURL) + 1
ELSE
CHARINDEX('.', myURL, d_start)
END as d_end
FROM
url_start
)
SELECT
*,
SUBSTRING(myURL, d_start, d_end - d_start) AS domain
FROM
url_end
source
share