当前位置:编程学习 > C#/ASP.NET >>

sql

Sql 怎么实现这个一个功能  
  输入2 返回 2
  输入4 返回 4
  输入6 返回 2+4
  输入14 返回 2+4+8


。。
。。
也就是2的次幂和  --------------------编程问答-------------------- 你还是写个存储过程返回吧 --------------------编程问答--------------------
alter FUNCTION [dbo].[fn_ConvertToTable] (@Total int)
RETURNS @aTable Table
(
PValue int
)
AS
BEGIN
  DECLARE @m INT
  while(@Total>1)
  begin
select @m = POWER(2,POWER(2,FLOOR(LOG(@Total))))
INSERT INTO @aTable VALUES(@m)
set @Total= @Total - @m
  end
  
  RETURN
END
这样写 只有2 和4、 6正确 其他的就有问题
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,