首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

如何求出数据表里的最明细级科目

2012-01-16 
怎么求出数据表里的最明细级科目?表chart有如下数据,其中字段名为chartcode字段内容如下01011020304040104

怎么求出数据表里的最明细级科目?
表chart有如下数据,其中字段名为
chartcode
字段内容如下
01                                    
011
02                                    
03                                    
04                                    
0401                                
0402                                
040                                  
041                                  
042                                  
有没有办法根据chartcode字段用一条SQL语句(不要存储过程)把所有最明细级的科目求出来?
比如以上的所有最明细科目就应该是   011,02,03,0401,0402,041,042
最明细的意思就是没有下级科目的,即他自己的chartcode不会成为别的chartcode的前缀,比如01就是011的前缀,04就是040的前缀而040又是0401,0402的前缀,所以01,04,040都不是最明细科目

[解决办法]
select t.* from 表 t where not exists(select 1 from 表 where chartcode like t.chartcode+ '% ' and len(chartcode)> len(t.chartcode))

热点排行