请问T-SQL 中一下语句中的函数的结果有什么作用!!!? 谢谢

createtable#year_sales(yearssmalldatetime,mmmoney)insert#year_salesselect'20090824',1... create table #year_sales
(years smalldatetime,mm money)

insert #year_sales
select '20090824',10054.985 union all
select '20090624',100754.985 union all
select '20110824',34454.985

select '2009'=sum(mm*(1-abs(sign(year(years)-2009)))),'2010'=sum(mm*(1-abs(sign(year(years)-2010)))),
'2011'=sum(mm*(1-abs(sign(year(years)-2011)))) from #year_sales
展开
 我来答
hit_lubin
2011-05-05 · TA获得超过7889个赞
知道大有可为答主
回答量:1554
采纳率:100%
帮助的人:2021万
展开全部
sum(mm*(1-abs(sign(year(years)-2009))))
sign()是比较括号内两个值大小的,如果括号内相减大于0返回1,等于0返回0,小于0返回-1.
abs()是取绝对值的函数。
abs(sign(year(years)-2009))那么这个判断就是如果years的年等于2009年,那么就是0,否则就是1。mm*(1-abs(sign(year(years)-2009))),就是如果是2009年的话,则取这一行mm的值,否则为0。外面加上sum是计算表中2009年的所有mm的值。
同样,后边两个是计算2010年,2011年的mm的合计值。
匿名用户
2011-05-06
展开全部
SELECT *
INTO 新的表名
FROM 原来的表名
WHERE 1=2

如果只是复制表结构,则末尾需要“WHERE 1=2”;
如果打算连数据都复制过去,则末尾的“WHERE 1=2”取消即可
另外,站长团上有产品团购,便宜有保证
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
congyicheng
2011-05-05
知道答主
回答量:6
采纳率:0%
帮助的人:3.6万
展开全部
把钱的金额乘以年数,算利息的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式