深圳市展芯科技好吗:数据视图

来源:百度文库 编辑:高考问答 时间:2024/05/11 18:53:38
请教一个问题,我在SQL 2000数据库中建立两个表格,一个存放公司信息,一个存放公司员工信息。我用数据视图对员工信息进行显示,需要显示员工的个人信息,以及所属公司的信息。
现在我遇到了一个问题,就是有些时候员工是未定义哪个公司,也就是员工的 dbo.PersonnelMessage.companyID 字段未分配,这样在视图中这个字段是不会显示出来。可我希望显示这个员工信息,并且其对应的公司信息未空白。请问如何实现呢?

SELECT dbo.PersonnelMessage.*, dbo.CompanyMessage.*
FROM dbo.CompanyMessage INNER JOIN
dbo.PersonnelMessage ON
dbo.CompanyMessage.id = dbo.PersonnelMessage.companyID

用left join,这样如果companyID没有的话,就显示是NULL

SELECT dbo.PersonnelMessage.*, dbo.CompanyMessage.*
FROM dbo.CompanyMessage left join
dbo.PersonnelMessage ON
dbo.CompanyMessage.id = dbo.PersonnelMessage.companyID

SELECT dbo.PersonnelMessage.*, dbo.CompanyMessage.*

将类似于dbo.PersonnelMessage.*这样的表达改为准确的表达方式:
如:
dbo.PersonnelMessage.companyID
将你想要的字段一一列出即可。