目前我拉出Facilities
其中permitType
是'Hazardous waste'
和licenseStatus
爲'Open'
,但會有這樣的情況,其中設施將有一個以上的許可證類型假設一個工廠可以有兩種許可證類型要篩選SQL Server查詢
- 危險廢物(狀態 - OPEN)
- AST(OPEN)
,所以我不應該在我的輸出,如果另一個是對顯示這項設施除了'危險廢物'以外,還有其他許多類型(狀態 - 開放),但是如果其他許可類型具有狀態 - 關閉,那麼我的查詢應該輸出設施,即如果AST(狀態 - 關閉)則應該從數據庫中提取設施。
我寫了下面的查詢,但不知道在哪裏包括條件。
SELECT
e.facilityID
,f.organization_core AS 'Facility Name'
,f.address_full_core AS 'Facility Address'
,a.permitNumber AS 'Permit Number'
,b.permitName AS 'Permit Name'
,a.licenseStatus AS 'Permit Status'
,c.permitType AS 'Permit Type'
FROM
tblPermits a
LEFT JOIN
dbo.tblPermit_Names b ON a.permitID = b.permitID
LEFT JOIN
dbo.tblLKP_Permit_Facilities d ON a.permitID = d.permitID
LEFT JOIN
dbo.tblPermit_Types c ON a.permitTypeID = c.permitTypeID
LEFT JOIN
dbo.tblFacility e ON d.facilityID = e.facilityID
LEFT JOIN
dbo.tblAddresses f ON e.facilityAddressID = f.addressID
WHERE
a.permitTypeID IN (SELECT permitTypeID
FROM dbo.tblPermit_Types
WHERE permitType IN ('Hazardous Waste'))
AND a.licenseStatus = 'Open'
AND isNull(a.deleted, 0) = 0
我很困惑你正在尋找什麼樣的條件。它是: 如果工廠有打開與地位的危險廢物許可證它被包含 如果它也有一個AST(開)不應該顯示 如果有AST(封閉的),而不是它應該顯示 所以你只想設施危險廢物(公開)是唯一的許可證? –
此外,您的表格結構的清晰表示會有所幫助 –
您的判斷正確無誤,我需要有危險廢物的設施(打開)以及任何其他許可證,例如AST(關閉)。如果該設施只有危險許可證並且已經開放,那麼我可以取得這些數據,但是如果同一設施有其他許可證,並且我必須根據其他許可證的打開或關閉來決定是否顯示沒有的設施。 – jeetu