我在表Table1中有一个名为Address1的字段。拆分地址 - TSQL
这是在这一领域数据的例子 -
8布里克巷和11 Balkerne驱动
我想在查询吐街道和号码,但我与如何实现这一奋斗。
任何帮助将是伟大的。
感谢
我在表Table1中有一个名为Address1的字段。拆分地址 - TSQL
这是在这一领域数据的例子 -
8布里克巷和11 Balkerne驱动
我想在查询吐街道和号码,但我与如何实现这一奋斗。
任何帮助将是伟大的。
感谢
SELECT
LEFT(Address1, PATINDEX('%[a-z]%', Address1)- 1) as HouseNumber,
SUBSTRING(Address1, PATINDEX('%[a-z]%', Address1), LEN(Address1)) as Street
FROM Table1
使用PATINDEX找到时HouseName开始,这样你可以单独的地址。
这种预期的结果:
HouseNumber Street
8 Brick Lane
11 Balkerne Drive
我希望这帮助。
我asssuming要分割从文本的数量,你可以使用
SELECT Left(Address1,CHARINDEX(' ',Address1,0)-1) as houseNumber,
Right(Address1,Len(Address1)-CHARINDEX(' ',Address1,0)) as houseStreet
From Table1
使用组合结尾 - \t \t CASE when PATINDEX('%[^ 0 (Address1,CHARINDEX('',Address1,0)-1))= 0 \t \t THEN left(Address1,CHARINDEX('',Address1,0)-1)ELSE NULL END AS BuildingNumber , \t \t CASE WHEN PATINDEX( '%[^ 0-9]%',左(地址1,CHARINDEX( ' 'Address1,0)-1))> 0 \t \t THEN左(地址1,CHARINDEX('' ,Address1,0)-1)ELSE NULL END AS BuildingName, \t Right(Address1,Len(Address1)-CHAR INDEX('',Address1,0))AS Street, – ikilledbill
你能显示预期的结果? –
下面是该领域的数据示例 - 8砖巷和11 Balkerne驱动器或它可能是1c安全街 我正在写一个查询尝试并实现以下从Address1字段。 在上面的例子中,8和11会拉回“HouseNumber”。 在上面的例子中,1c将拉回为“HouseName” 在以上示例中,Safe Street,Brick Lane和Balkerne Drive将出现在“街道” – ikilledbill