读书人

怎么用 SQL 语句连接多个数据表

发布时间: 2013-09-11 16:59:33 作者: rapoo

如何用 SQL 语句连接多个数据表?
有这么四个表(用ADO连接SQLServer数据库)医院雇员 employee,医生physician,护士nurse,技师technician,(注意雇员是单独的一个工作类别,相当于医院的行政人员,并不是一个全集),如果要查询医院所有工作人员的工资,并按工资人员名称排序,那该如何连接这四个表啊?用SQL语句该怎么写呢?想了好久,自己解决不了了,麻烦各位帮帮忙。(用ADO连接SQLServer数据库)

[解决办法]
SELECT * FROM (
SELECT 姓名,工资 FROM employee UNION
SELECT 姓名,工资 FROM physician UNION
SELECT 姓名,工资 FROM nurse UNION
SELECT 姓名,工资 FROM technician
)A ORDER BY 姓名
[解决办法]
select a.工资,b.工资,c.工资,d.工资 from employee a, physician b,nurse c,technician d order by a.名称,b.名称,c.名称,d.名称

如果要把所有人工资当成一字段,然后再排序则写一存储过程:
Create procedure abc
as
begin
CREATE table #TmpTable
(
sname varchar(20),
gz dec(9,3)
)
INSERT INTO #TmpTable SELECT 名称,工资 from employee
INSERT INTO #TmpTable SELECT 名称,工资 from physician
INSERT INTO #TmpTable SELECT 名称,工资 from nurse
INSERT INTO #TmpTable SELECT 名称,工资 from technician

select sname,gz from #TmpTable order by sname
end
end
我的异常网推荐解决方案:软件开发者薪资,http://www.myexception.cn/other/1391128.html

读书人网 >.NET

热点推荐