当前位置: 代码迷 >> 其他数据库 >> sql查询语句的编写解决思路
  详细解决方案

sql查询语句的编写解决思路

热度:4676   发布时间:2013-02-26 00:00:00.0
sql查询语句的编写
2张表,为父子关系表: 

1 emp表 [员工]

  id Name Age

  1 张三 31

  2 李四 28

  3 王五 40

---------------------------------

2 wages表 [工资]

Emp_id wageName(工资项) wage(工资金额 )  

1 基本工资 1.00  

1 补助 2.00  

1 津贴 3.00  

2 基本工资 4.00  

2 补助 5.00  

2 津贴 6.00  

3 基本工资 7.00  

3 补助 8.00  

3 津贴 9.00  

-------------

要求查询得到:

  id Name Age 基本工资 补助 津贴 合计

  1 张三 31 1 2 3 6

  2 李四 28 4 5 6 15

  3 王五 40 7 8 9 24

我这样实现:

select emp.*,
'基本工资'=(select wage from wages where wages.emp_id=emp.id and ages.wageName='基本工资'),
'补助'=(select wage from wages where wages.emp_id=emp.id and wages.wageName='补助'),
'津贴'=(select wage from wages where wages.emp_id=emp.id and wages.wageName='津贴'),
'合计'=(select sum(wage) from wages where wages.emp_id=emp.id)
from emp left join wages on(emp.id=wages.emp_id)
group by id,Name,Age
能得到结果,但总感觉不太理想,本人数据库一般般,请大家赐教,给出更清晰的实现~


------解决方案--------------------------------------------------------
你用的什么数据库?

当您的问题得到解答后请及时结贴.
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5
  相关解决方案