日期:2014-05-18  浏览次数:20526 次

求几个也许是简单也许是复杂的SQL语句
A表
单位    人数   总工资  平均工资
技术部    30    30000
销售部    20    50000
------------------------------
我要求平均工资,其中人数有的单位可能是0,因为可能没有输入。如果人数非0,则平均工资=总工资/人数,如果人数为0,则不计算。
这个怎么写呀?

B表
单位  工资  奖金  
已经有很多条记录了。我要添加一条新记录,新记录的字段的值是B表中某些记录的相应字段的和或者差。这种SQL语句怎么写?



------解决方案--------------------
select 平均工资 = case 人数
when 0 then 0
else 总工资/人数
end
from A表
group by 单位
------解决方案--------------------
select 单位,人数,总工资,平均工资=(case when isnull(人数,0) <> 0 then 总工资/人数 end)
from 表A
------解决方案--------------------
update A表
set 平均工资=总工资/人数
where 人数 <> 0
------解决方案--------------------
--查詢
Select
单位,
人数,
总工资,
平均工资 = (Case 人数 When 0 Then 0 Else 总工资 / 人数 End)
From
A

--更新
Update
A
Set
平均工资 = (Case 人数 When 0 Then 0 Else 总工资 / 人数 End)
------解决方案--------------------
jbzj(歼八战机) ( ) 信誉:99 Blog 2007-03-26 18:12:29 得分: 0


第二个问题呢?
我用的是access数据库


----------
ACCESS這麼寫


--查詢
Select
单位,
人数,
总工资,
平均工资 = IIF(人数 = 0 , 0 , 总工资 / 人数)
From
A

--更新
Update
A
Set
平均工资 = IIF(人数 = 0 , 0 , 总工资 / 人数)


------解决方案--------------------
B表
单位  工资  奖金  
已经有很多条记录了。我要添加一条新记录,新记录的字段的值是B表中某些记录的相应字段的和或者差。这种SQL语句怎么写?
----------

這個最好能舉例說明,如果你的結果說明白了,很多人都可以幫你的。

下班了。 :)
我的异常网推荐解决方案:软件开发者薪资,http://www.aiyiweb.com/other/1391128.html