sql - 如何在 SQL Server 中设计查询或查找错误?

标签 sql sql-server-2005 database-design

我想知道其他人是如何在 SQL Server 中设计 SQL 查询的。我只使用“设计查询编辑器”,但有时我认为我错过了一些东西。

例如,以下奇怪的查询仅返回一些与给定条件匹配的 ID(这是一个强制性的备件矩阵,如果 sp1 更改,则 sp2 也必须更改)。我愿意接受改进,但我的主要问题是我设置的大括号太多或太少,并且 SQL Server 仅在第 359 行(最后一行)中使用“靠近 ')' 的错误语法”对其进行注释。

如何在查询中发现/避免此类错误?

SELECT  idData FROM tabData
WHERE     (fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/402-22720-0002', 
                                   'A/402-22710-0003', 'A/402-22720-0001', 'A/402-22710-0001'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0004', 
                                   'A/415-22710-0011', 'A/415-22710-0031')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/402-22720-0002', 
                                   'A/402-22710-0003', 'A/402-22720-0001', 'A/402-22710-0001'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/403-22710-0001'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                   'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0009'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                   'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                 'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/321-0000-00292')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/321-0000-00292')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/404-22710-0009', 
                                   'A/404-22710-0003', 'A/404-22710-0008', 'A/404-22710-0007', 'A/404-22710-0075', 'A/404-22710-0077', 'A/404-22710-0079'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0005')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND
       (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND
       (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028'))))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0003','A/401-22710-0005','A/401-22710-0004','A/401-22710-0001','A/401-22710-0013','A/401-22710-0014','A/401-22710-0015'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0003','A/401-22710-0005','A/401-22710-0004','A/401-22710-0001','A/401-22710-0013','A/401-22710-0014','A/401-22710-0015'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1204-8457')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1204-8457')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0027')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/412-00000-0010')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0009')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0009')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0007')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0003')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1230-9478')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1222-5301')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR (fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0015')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005')))

预先感谢您的任何建议。

最佳答案

获取 SSMS 2008,然后每当出现错误时,双击它即可转到该行。继续添加) (关闭)直到它不再突出显示它(这表示与先前不匹配的 ( 匹配)。

至于 How do you find/avoid such bugs in your queries? ,保持良好的格式结构,以便在不匹配时立即显示括号。

SELECT  idData FROM tabData
WHERE     (fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/402-22720-0002', 
                                   'A/402-22710-0003', 'A/402-22720-0001', 'A/402-22710-0001'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0004', 
                                   'A/415-22710-0011', 'A/415-22710-0031')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/402-22720-0002', 
                                   'A/402-22710-0003', 'A/402-22720-0001', 'A/402-22710-0001'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/403-22710-0001'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                   'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0009'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                   'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0006', 
                                 'A/401-22710-0002'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/321-0000-00292')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/321-0000-00292')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/404-22710-0009', 
                                   'A/404-22710-0003', 'A/404-22710-0008', 'A/404-22710-0007', 'A/404-22710-0075', 'A/404-22710-0077', 'A/404-22710-0079'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0005')) AND 
      (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028')))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND
       (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))) 
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND
       (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028'))))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0003','A/401-22710-0005','A/401-22710-0004','A/401-22710-0001','A/401-22710-0013','A/401-22710-0014','A/401-22710-0015'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013', 
                                   'A/415-22710-0010', 'A/415-22710-0028'))))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/8CS-22710-0004')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName IN ('A/401-22710-0003','A/401-22710-0005','A/401-22710-0004','A/401-22710-0001','A/401-22710-0013','A/401-22710-0014','A/401-22710-0015'))) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1204-8457')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1204-8457')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0027')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028'))))))))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/412-00000-0010')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0009')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName IN ('A/415-22710-0013','A/415-22710-0010','A/415-22710-0028')))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0009')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0007')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0003')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1230-9478')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR(fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = '1222-5301')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))
OR (fiModel = 775) AND EXISTS(SELECT     tabDataDetail_5.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_5 INNER JOIN
                                   tabSparePart AS tabSparePart_5 ON tabDataDetail_5.fiSparePart = tabSparePart_5.idSparePart
            WHERE      (tabData.idData = tabDataDetail_5.fiData) AND (tabDataDetail_5.Material_Quantity >= 1) AND (tabSparePart_5.SparePartName = 'A/415-22710-0015')) AND (NOT EXISTS
          (SELECT     tabDataDetail_3.idDataDetail
            FROM          tabDataDetail AS tabDataDetail_3 INNER JOIN
                                   tabSparePart AS tabSparePart_3 ON tabDataDetail_3.fiSparePart = tabSparePart_3.idSparePart
            WHERE      (tabData.idData = tabDataDetail_3.fiData) AND (tabDataDetail_3.Material_Quantity >= 1) AND (tabSparePart_3.SparePartName = 'A/415-22710-0005'))))))))))

关于sql - 如何在 SQL Server 中设计查询或查找错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5430747/

相关文章:

sql - SQL Server 2005 中两个值不同时无法绑定(bind)多部分标识符

Sql UNION 具有附加原始列的相同表

mysql - 表示MySQL数据库中动态添加的表单字段

sql - 为什么 pg 查询会在一段时间后停止使用索引?

sql - 身份主键是否应该始终非集群?

sql - sql中的条件order by子句

java - SQL 查询生成器实用程序

当我在数据库名称中包含数字字符时,用于创建数据库的 SQL Server 查询给我一个错误

在 WHERE 子句中使用聚合进行 SQL 更新

mysql - 数据库设计 : how to store XML/JSON in database?