SQL SERVER 中 substring 取某列第一个字符的问题,

SELECTSUBSTRING('AA',1,1),*FROMAASUBSTRING('列名',1,1)从‘AA’列第一个位子开始取第一个字符为什么他还出现A并不是S呢,... SELECT SUBSTRING('AA',1,1),* FROM AA SUBSTRING('列名',1,1)从‘AA’列第一个位子开始 取第一个字符为什么他还出现A 并不是S呢,,求解。。。谢谢。
如果AA列的类型是
AA列
一个
12
二个

有中文有数字。但是我想取值第一个字符,并且变成
1
1
2

怎么办。求大神~
展开
 我来答
一如真a
2016-06-15 · TA获得超过369个赞
知道小有建树答主
回答量:666
采纳率:75%
帮助的人:341万
展开全部
SELECT SUBSTRING(AA,1,1),* FROM AA
列名不能 加单引号 加了单引号 就是字符串了
更多追问追答
追问
很厉害。原来是这样,谢谢,我追问的第二个问题,能解决吗?

如果AA列的类型是
AA列
一个
12
二个

有中文有数字。但是我想取值第一个字符,并且变成
1
1
2
追答
数字的话 可以截第一个 但是汉字的话 就不能直接截了
如果种类不是很多的话 就用case when 转换下
比如
case when substr(AA,1,2)='一' then 1
when substr(AA,1,2)='二' then 2
...
end
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式