读书人

求一SQL语句update解决思路

发布时间: 2012-01-07 21:41:55 作者: rapoo

求一SQL语句update
有一会计科目表
科目编号科目名称科目级别是否末级科目
101现金10
12201个人20
1220101张三30
1220102李四30
12202单位20
1220201AAA公司30
....

科目编号按3,2,2,3共10位数字分4级
要求把是末级科目的【是否末级科目】设为1
没有下一级编号的即位末级科目。

怎么写这个update


[解决办法]

SQL code
create table 表名 (科目编号 varchar(10), 科目名称 varchar(10),科目级别 int,是否末级科目   int)insert into 表名 select '101'     ,'现金',     1,       0  insert into 表名 select '12201'   ,'个人',     2,       0  insert into 表名 select '1220101' ,'张三',     3,       0  insert into 表名 select '1220102' ,'李四',     3,       0  insert into 表名 select '12202'   ,'单位',     2,       0  insert into 表名 select '1220201' ,'AAA公司',  3,       0  update 表名 set 是否末级科目=0 --你要求的SQL语句update 表名 set 是否末级科目=1 from 表名 as t where not exists (select * from 表名 where 科目编号 like t.科目编号 +  '%' and 科目编号 <>t.科目编号)select * from 表名drop table 表名 

读书人网 >SQL Server

热点推荐