create table test ( name varchar(20) )insert into test values('LS201002001') insert into test values('LS201002/001') insert into test values('LS201002\001')select *from test -------1 select *from test where name like 'LS[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or name like 'LS[0-9][0-9][0-9][0-9][0-9][0-9]/[0-9][0-9][0-9]' -------2 select *From test where name like 'LS[0-9]%[0-9][0-9][0-9][0-9]' or name like 'LS[0-9]%/[0-9][0-9][0-9]' 这是应急的,很痛苦
(1)LS|yyyyMM|000, 实际流水号比如:LS201002001
(2)LS|yyyyMM|/|000, 实际流水号比如:LS201002/001
注:这些流水号在同一列中
问题:我现在要找出符合LS|yyyyMM|000类型的流水号,怎么找?
你把从数据库里面读出来的流水号(num), num.remove("|","")这样就把"|"去掉了,
if( num.remove("|","")=="LS201002001" || num.remove("|","")=="LS201002/001")
{
你的操作;
}
(
name varchar(20)
)insert into test values('LS201002001')
insert into test values('LS201002/001')
insert into test values('LS201002\001')select *from test
-------1
select *from test where name like 'LS[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]' or name like 'LS[0-9][0-9][0-9][0-9][0-9][0-9]/[0-9][0-9][0-9]'
-------2
select *From test where name like 'LS[0-9]%[0-9][0-9][0-9][0-9]' or name like 'LS[0-9]%/[0-9][0-9][0-9]'
这是应急的,很痛苦
数据如下:
LS2010/001
XL001Amin20100226
LS201002/002
CCaaa2010.001
LS201002/005
你现在找出记录:
LS201002/002
LS201002/005
就行了(流水号还可能有更复杂的,XL001Amin20100226的规则是:自定义|流水号|用户名|日期,具体格式:XL|000|User|yyyyMMdd,其中user代表用户名,是可变的)认为简单的话就写出代码。