我正在根据将要实现的用户搜索来获取与特定城市相同的城市。
下面有一个sql查询,它提供了我想要的确切输出:
Select r.City, AVG(s.Longitude) AS Longitude, AVG(s.Latitude) AS Latitude
From CafeAddress r inner join Cafe s on s.CafeId = r.CafeId
Where City = 'Mumbai'
Group By City
当前输出:
City Longitude Latitude
Mumbai -73.9904097 40.7036292
我当前要添加的是一个网址安全的“ id”,它几乎位于城市中,但没有空格,随机字符只希望它们全部小写。
像下面这样:
id City Longitude Latitude
mumbai Mumbai -73.9904097 40.7036292
有没有办法实现这样的东西?
答案 0 :(得分:2)
使用LOWER
使其小写
使用TRIM
从开始/结束处修剪空白
使用REPLACE
替换带下划线的内部空间
Select REPLACE(TRIM(LOWER(r.City)),' ','_'),r.City, AVG(s.Longitude) AS Longitude, AVG(s.Latitude) AS Latitude
From CafeAddress r inner join Cafe s on s.CafeId = r.CafeId
Where City = 'Mumbai'
Group By City
例如,如果r.City是'SAN JOSE'
它会返回:'san_jose'
您可以菊花链REPLACE()
摆脱特殊字符或使用TRANSLATE()