[急]请教一条简单的SQL语句 ( 积分: 100 )

  • 主题发起人 主题发起人 subosoft
  • 开始时间 开始时间
S

subosoft

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库字段【F1】格式如下:<br>00018-0;00024-168;00040-0;00100-100;00001-116;00008-0;00015-95;00042-0;00002-0;00004-145;<br>请问怎么用一条SQL语句查询出00024后面的(168)呢??<br>[blue][/blue]
 
select&nbsp;*&nbsp;from&nbsp;table&nbsp;where&nbsp;F1&nbsp;like&nbsp;'00024*168'
 
select&nbsp;substring(F1,CHARINDEX('00024',&nbsp;F1)+5,3)&nbsp;as&nbsp;s&nbsp;from&nbsp;table<br>这里考虑横线后面是3位处理,如果你要考虑不同位数可以再这个原理上修改下就可以了。
 
To<br>&nbsp;xinjinren<br>如果不同位数怎么处理呢??
 
使用下面的&nbsp;f_split&nbsp;函数(转)<br><br>create&nbsp;function&nbsp;f_split(@SourceSql&nbsp;varchar(8000),@StrSeprate&nbsp;varchar(10))<br>returns&nbsp;@temp&nbsp;table(a&nbsp;varchar(100))<br>--实现split功能&nbsp;的函数<br>--date&nbsp;&nbsp;&nbsp;&nbsp;:2005-4-20<br>--Author&nbsp;:Domino<br>as&nbsp;<br>begin<br>&nbsp;&nbsp;&nbsp;&nbsp;declare&nbsp;@i&nbsp;int<br>&nbsp;&nbsp;&nbsp;&nbsp;set&nbsp;@SourceSql=rtrim(ltrim(@SourceSql))<br>&nbsp;&nbsp;&nbsp;&nbsp;set&nbsp;@i=charindex(@StrSeprate,@SourceSql)<br>&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;@i&gt;=1<br>&nbsp;&nbsp;&nbsp;&nbsp;begin<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insert&nbsp;@temp&nbsp;values(left(@SourceSql,@i-1))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set&nbsp;@SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;set&nbsp;@i=charindex(@StrSeprate,@SourceSql)<br>&nbsp;&nbsp;&nbsp;&nbsp;end<br>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;@SourceSql&lt;&gt;'/'<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;insert&nbsp;@temp&nbsp;values(@SourceSql)<br>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;<br>end<br><br>用法:select&nbsp;*&nbsp;from&nbsp;dbo.f_split('A:B:C:D:E',':')
 
To<br>&nbsp;Yhhe<br>那个函数只是一个分段函数.并没实现我要求的功能的...
 
select&nbsp;*&nbsp;from&nbsp;table&nbsp;where&nbsp;F1&nbsp;like&nbsp;'00024%168'
 
select&nbsp;right(f1,len(f1)-6)&nbsp;from&nbsp;table&nbsp;where&nbsp;left(f1,5)='00024'
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
501
import
I
后退
顶部