我有一个位置栏,格式为“ Los angeles,LA,US”。如何在SQL选择中仅选择“洛杉矶,美国”? 换句话说,如何删除两个逗号之间的单词?
答案 0 :(得分:0)
好吧,只要您确定总会有两个逗号...
您可以通过以下方式到达洛杉矶
SELECT LEFT( 'Los angeles,LA,US', Charindex(',','Los angeles,LA,US') - 1 )
如果您不喜欢Left,也可以使用子字符串。
对于第二个,您将不得不使用子字符串和两个charindex来跳过第一个逗号:
SELECT Substring(
'Los angeles,LA,US',
1+ CHARINDEX ( ',', 'Los angeles,LA,US', 1+ Charindex( ',','Los angeles,LA,US') )
,100)
答案 1 :(得分:0)
假设您的数据位于“位置”表的“城市”字段中:
select CONCAT(LEFT(City, CHARINDEX(',',City)), RIGHT(City, CHARINDEX(',',REVERSE(City))-1))
as ShortName from Locations;