读书人

求SQL,该怎么解决

发布时间: 2013-01-26 13:47:02 作者: rapoo

求SQL
两张表,如下:
Table1Table2
XX123456AA
XXX123456AAA
XXXX123456AAAA
……

Table1中的‘X’代表A-Z任意大写字母
Table1中的每条记录都是由N个大写字母开头
Table2中的记录是匹配条件

求SQL,得到如下结果:
AA123456
AAA123456
AAAA123456
[解决办法]
drop table table1;
drop table table2;
create table table1(id int,name varchar(10));
insert into table1 values(1,'xx123456');
insert into table1 values(2,'xxx123456');
create table table2(id int,name varchar(10));
insert into table2 values(1,'aa');
insert into table2 values(2,'aaa');
select a1.id,concat(substring(a2.name,1,a2.len),substring(a1.name,a2.len+1))
from table1 as a1,(select id,name,length(name) as len from table2) as a2 where a1.id=a2.id;

[解决办法]
不大理解意思 是不是根据2个表中字段的英文字母长度 进行替换?
[解决办法]
Table2中的记录是匹配条件

举个实例,是什么内容
[解决办法]
select table1.col from table1,table2 where table1.col like '%'
[解决办法]
table2.col
[解决办法]
'%'

基本语法就是这样,但是效率很差。

读书人网 >oracle

热点推荐