У меня есть таблица с именем Houses
на базе базы данных sql, в которой есть столбец, содержащий (датские) адреса. В Дании название улицы всегда приходит до номера дома, а затем информация о квартире, если это квартира. Я хочу разделить название улицы и номер на две строки и игнорировать информацию о квартире. Мои данные выглядит следующим образом:Разделение адресной строки в SQL
Address
Fisker Vejen 48B, 1.TV
Baunevej 29
Таким образом, некоторые названия улиц имеют более чем 1 слово, а некоторые имеют информацию Адреса, телефоны квартиры, а некоторые нет. Некоторые номера домов также имеют нечисловые символы. Я хочу, чтобы это было:
Street_Name House_Number
Fisker Vejen 48B
Baunevej 29
Я могу извлечь название улицы со следующим кодом:
select case when a.NumStart> 0 then LEFT(a.Address,a.NumStart-1) ELSE a.Address END as Street_Name,
FROM
(select patindex('%[0-9]%',Address) as [NumStart], Address from Houses) a
, но я не могу получить номер дома без информации пола. Может ли кто-нибудь помочь?
Спасибо!
** '' ** всегда будет между номером улицы и информации квартиры? –
Да, но номер улицы может содержать и нечисловой символ. Я только что обновил вопрос. – Mace