读书人

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

发布时间: 2012-02-03 22:02:47 作者: rapoo

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.html

读书人网 >其他数据库

热点推荐