SQL - 如果所有值都为true,将返回的Nested语句。

时间:2014-02-25 23:56:08

标签: sql sql-server

基本上我有一份工作单表和每个工作的个别任务表。

表:Job_Order
的jobId 客户ID

表:Job_Task 任务id

的jobId isComplete

我想要的是填充数据网格的嵌套语句,以说明作业单上的每个任务是否完整。

1 个答案:

答案 0 :(得分:1)

首先:你应该总是试着向你研究过的人展示并试图这样做。老实说 - 这很简单,应该是你可以在很短的时间内解决的问题。

以下是我从您的简要要求中理解的代码:

DECLARE @Job_Order TABLE 

(
  ID INT IDENTITY(1,1),
  CustomerID INT
)

DECLARE @Job_Task TABLE (
  ID INT IDENTITY(1,1),
  Job_ID INT,
  Complete INT DEFAULT (0)
)

INSERT INTO @Job_Order (CustomerID) VALUES (1),(2),(1),(1),(2),(3),(3)
INSERT INTO @Job_Task (Job_ID, Complete) VALUES (1,1),(2,0),(3,0),(4,0),(5,1)

SELECT 
  [order].ID [Order ID],
  [order].CustomerID [Customer],
  CASE WHEN ISNULL(Complete,0) = 0 THEN 'No' ELSE 'Yes' END [Job Complete]
 FROM @job_Order [order]
LEFT JOIN @Job_Task [task] ON [order].ID = [task].Job_ID

如果您需要解释任何问题,请与我们联系。

相关问题