求SQL语句

look_007 2010-08-23 10:02:53
rq js
2010-08-20 333333333333333333333333330000000000111111111

请问有没有可以统计出JS里有多少个3,多少个0,多少个1。0是从第几位开始的。1又是从第几位开始的。

谢谢
...全文
86 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝色风影 2010-08-23
  • 打赏
  • 举报
回复
学习了...
lcqtgb 2010-08-23
  • 打赏
  • 举报
回复
上面的应该那个位置不会对。。。。replace都搞光字符了。。能正确的找出字符所出现的位置呢。。借用上楼的兄弟代码一用
select rq,
charindex('0',js) as [0的开始位置],
charindex('1',js) as [1的开始位置],
len(left(js,charindex('0',js)-1)) as [3的个数],
len(replace(replace(js,'3',''),'1','')) as [0的个数],
len(replace(replace(js,'3',''),'0','')) as [1的个数]

from tb
cjzm83 2010-08-23
  • 打赏
  • 举报
回复

select rq,
len(left(js,charindex('0',js)-1)) as [3的个数],
len(replace(replace(js,'3',''),'1','')) as [0的个数],
charindex('0',js) as [0的开始位置],
len(replace(replace(js,'3',''),'0','')) as [1的个数],
charindex('1',js) as [1的开始位置]
from tb
playwarcraft 2010-08-23
  • 打赏
  • 举报
回复
3,0,1 都是连续的吗?

declare @t table(rq datetime,js varchar(100))
insert into @t select '2010-8-20','3333333333333330000000000111111111'

select convert(char(10),rq,120) as rq,
len_3 =len(js)-len(replace(js,'3','')),
len_0 =len(js)-len(replace(js,'0','')),
begin_0 = charindex('0',js),
len_1=len(js)-len(replace(js,'1','')),
begin_1= charindex('1',js)
from @t
hao1hao2hao3 2010-08-23
  • 打赏
  • 举报
回复

select len(js)-len(replace(js,'3','')) as '3的个数',len(js)-len(replace(js,'0','')) as '0的个数',len(js)-len(replace(js,'1','')) as '1的个数',charindex('0',js,1) as '0开始的位置',charindex('1',js,1) as '1开始的位置' from tb

hao1hao2hao3 2010-08-23
  • 打赏
  • 举报
回复

declare @s varchar(200)
set @s = '333333333333333333333333330000000000111111111'
select len(@s)-len(replace(@s,'3','')) as '3的个数',len(@s)-len(replace(@s,'0','')) as '0的个数',len(@s)-len(replace(@s,'1','')) as '1的个数',charindex('0',@s,1) as '0开始的位置',charindex('1',@s,1) as '1开始的位置'

自己换成表中的字段就行了。

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧