大写字母串中的最后一个字母 - MS Access

时间:2017-01-19 15:33:04

标签: ms-access ms-office access capitalize

我的访问数据库表中有一个列,我使用StrConv([MyColumn],3)运行查询以使其成为正确的大小写,但最后两个字母是州名,此查询使SOmeThing, soMethINg, NY成为Something, Something, Ny }, 我希望结果为Something, Something, NY 是否有另一个查询,我可以运行后来大写最后一个字母?

2 个答案:

答案 0 :(得分:2)

您可以使用:

UcaseLast: Left([YourColumn], Len([YourColumn]) - 1) & UCase(Right([YourColumn], 1)) 

答案 1 :(得分:1)

好吧,大多数人会告诉你将'地址','城市'和'州'存储为单独的字段。然后你分别将每个Proper Case连接起来并将它们连接在一起。如果你能做到这一点......这是你最好的方法。

如果这是一个被扔给你的数据库或文件,你不能让字段/表格改变......它仍然可以得到你想要的结果。但是,您最好确保所有字符串都以您的州代码结尾。另外请确保您没有外国地址,因为加拿大(和其他国家/地区)最后会使用两个字母作为省代码。

但是如果您确定所有记录都包含两个字母的州缩写,则可以继续以下内容:

MyColumnAdj: StrConv(Mid([MyColumn],1,len([MyColumn])-2),3) + StrConv(right([MyColumn],2),1)

这会将[MyColumn]的中间字符串从位置1移动到[MyColumn]的长度减去2(省略状态代码),并将它作为正确的案例。

然后将(使用加号)连接到[MyColumn]的权限字符串,长度为2,大写字母为。

如果字段在字符串末尾没有始终如一的状态代码,那么这又是危险的。

祝你好运。希望这可以帮助。 :)