如何在SQL Server中设计查询或查找错误?
我想知道其他人是如何在SQLServer中设计SQL查询的。我只使用“设计查询编辑器”,但有时我觉得我遗漏了一些东西 例如,下面的奇怪查询只返回一些与给定条件匹配的ID(这是一个必需的备件矩阵,如果sp1已更改,则sp2也必须更改)。我对改进持开放态度,但我的主要问题是,我设置了太多或太少的大括号,SQL Server只在第359行(最后一行)中用“错误的语法”对其进行注释 您如何在查询中发现/避免此类错误?如何在SQL Server中设计查询或查找错误?,sql,sql-server-2005,database-design,Sql,Sql Server 2005,Database Design,我想知道其他人是如何在SQLServer中设计SQL查询的。我只使用“设计查询编辑器”,但有时我觉得我遗漏了一些东西 例如,下面的奇怪查询只返回一些与给定条件匹配的ID(这是一个必需的备件矩阵,如果sp1已更改,则sp2也必须更改)。我对改进持开放态度,但我的主要问题是,我设置了太多或太少的大括号,SQL Server只在第359行(最后一行)中用“错误的语法”对其进行注释 您如何在查询中发现/避免此类错误? SELECT idData FROM tabData WHERE (fiMo
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,然后每当它给你一个错误,双击它转到该行。继续添加
)
(关闭),直到它不再突出显示它(这表示与先前未匹配的(
)匹配)
至于如何在查询中发现/避免此类错误?
,请保持良好的格式结构,以便在不匹配时立即显示括号
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 Server 2005中也是可能的(我还没有注意到),并帮助我查找/添加缺少的括号。感谢您的建议,我会记住这一点。同时,我按照Richard的建议,通过查看突出显示的对应括号找到了缺少的括号。