Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 需要帮助编写内部嵌套联接吗_Sql Server - Fatal编程技术网

Sql server 需要帮助编写内部嵌套联接吗

Sql server 需要帮助编写内部嵌套联接吗,sql-server,Sql Server,概述:在TestDB数据库中编写sql查询,返回JobOrder记录 涉及的表格: 由于您还不熟悉数据模式,我将详细介绍您将在查询中使用的表,即JobOrder、EntRequirement和Offer Select * from JobOrder where FromDateTime > today and offerStatusId =9 查询要求: 选择已确认的所有JobOrder(仅返回JobOrder表中的列) 其FromDateTime在未来的报价。已确认的报价的OfferS

概述:在TestDB数据库中编写sql查询,返回JobOrder记录

涉及的表格:

由于您还不熟悉数据模式,我将详细介绍您将在查询中使用的表,即JobOrder、EntRequirement和Offer

Select * from JobOrder where FromDateTime > today
and offerStatusId =9
查询要求:

选择已确认的所有JobOrder(仅返回JobOrder表中的列) 其FromDateTime在未来的报价。已确认的报价的OfferStatusId为9

*提示:订单与报价中的工单没有直接关系。你需要 利用三个表之间的关系:JobOrder、EntRequirement、, 并提供

Select * from JobOrder where FromDateTime > today
and offerStatusId =9
  • EntRequirement将JobOrderId作为外键
  • 报价将企业需求作为外键
这就是我到目前为止所做的:

Select * from EntRequirement
inner join Offer
on EntRequirement.EntRequirementId = Offer.EnterpriseRequirementId 
and Offer.OfferStatusId = 9 
and Offer.FromDateTime > GETDATE ()

请帮忙。

我想JobOrders表的主键是一个名为id的列

select *
from JobOrders jo
where exists (
    select 1 from EntRequirement er
    join Offer o on er.EntRequirementId = o.EnterpriseRequirementId 
    where er.JobOrderId = jo.id
) 
 and jo.FromDateTime >  GETDATE ()
 and jo.offerStatusId =9

这看起来像是家庭作业。好吧,我们不会为你做家庭作业,但是给你的提示应该会有帮助。您需要在查询中包括
JobOrder
,将其加入
EntRequirement