【发布时间】:2015-01-12 16:48:17
【问题描述】:
我有一个相当大的 sql-srv 查询,在我添加第二个外部应用之前它一直有效,现在我不知道如何修复它,这里是查询。
SELECT Qualitycontrol.ID, Qualitycontrol.MachineNo, Qualitycontrol.Description, Qualitycontrol.CreatedTime, Qualitycontrol.ProductCode, Qualitycontrol.WorkOrder,
Qualitycontrol.Quantity, Qualitycontrol.ControllerID ,Qc.Comment, Qc.Reason, Qualitycontrol.FirstOffOverride
FROM Qualitycontrol
OUTER APPLY (
SELECT TOP 1 *
FROM QualityControl_Comments
WHERE Qualitycontrol.ID = QualityControl_Comments.QCUID
ORDER BY Qualitycontrol.ID DESC -- whatevet defines order in QualityControl_Comments
) AS Qc
OUTER APPLY (
SELECT top 1 ReaderData.ReaderTime, LEFT(controller_scrap_details.personal_info, 4) AS name, ReaderData.ReaderDate
FROM controller_scrap_details INNER JOIN
ReaderData ON controller_scrap_details.card_id = ReaderData.CardID
WHERE controller_scrap_details.password = '1111' AND ReaderData.controllerID = Qualitycontrol.ControllerID AND ReaderData.dtReading BETWEEN DATEADD(DAY, - 1, CAST(GETDATE() AS DATE)) AND DATEADD(DAY, 1,
CAST(GETDATE() AS DATE)))
) AS firstoff
INNER JOIN
(
SELECT Qualitycontrol.MachineNo, MAX(Qualitycontrol.ID) MID
FROM Qualitycontrol
GROUP BY Qualitycontrol.MachineNo
) UNQ ON UNQ.MID = Qualitycontrol.ID
WHERE (Qualitycontrol.CreatedTime BETWEEN CAST(GETDATE() AS DATE) AND DATEADD(DAY, 1, CAST(GETDATE() AS DATE)))
ORDER BY Qualitycontrol.MachineNo
【问题讨论】:
-
错误是什么?预期的结果是什么?您能否格式化您的查询,使其更具可读性?
标签: php sql-server