日期:2014-05-17  浏览次数:20691 次

查询小于20130306的记录?
--现有一表tab表: 
create table tb(
filename varchar2(128)
);

--插入数据如下
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130310_A_0003_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130301_A_0002_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130302_A_0002_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130307_A_0011_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130303_A_0002_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130304_A_0009_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130309_A_0011_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130306_A_0011_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130308_A_0011_0001.xml');
insert into tb (FILENAME)values ('99700050000_JGXZ_0000_20130305_A_0001_0001.xml');


select * from tb;


查询小于20130306的数据记录,此sql 怎么写?

------解决方案--------------------
select * from tb where substring(filename,23,8)<'20130306'