[英]Msg 116, Level 16, State 1
請幫助我如何解決這個問題
消息 116,級別 16,狀態 1,過程 openclosebycat,第 18 行
當子查詢未通過 EXISTS 引入時,選擇列表中只能指定一個表達式。消息 116,級別 16,狀態 1,過程 openclosebycat,第 20 行
當子查詢未通過 EXISTS 引入時,選擇列表中只能指定一個表達式。
我的代碼:
select distinct
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS LIKE 'closed')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closen,
(SELECT NUMBER, STATUS, ID
FROM dbo.PROBS
WHERE (STATUS LIKE 'closed')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closedet,
(SELECT NUMBER, STATUS, ID
FROM dbo.PROBS
WHERE (STATUS LIKE 'open')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS opendet,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'closed')
AND (CATEGORY = 'problem')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closeporb,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'closed')
AND (CATEGORY = 'request for information')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closereinfo,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'closed')
AND (CATEGORY = 'incident')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closeincid,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'closed')
AND (CATEGORY = 'complaint')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS closecomp,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'open')
AND (CATEGORY = 'problem')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS openporb,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'open')
AND (CATEGORY = 'request for information')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS openreinfo,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'open')
AND (CATEGORY = 'incident')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS openincid,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS = 'open')
AND (CATEGORY = 'complaint')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS opencomp,
(SELECT COUNT(*)
FROM dbo.PROBS
WHERE (STATUS LIKE 'open')
AND (OPEN_TIME >= @DateFrom)
AND (CLOSE_TIME <= @DateTo)) AS openn
FROM
dbo.PROBS
SELECT
的子查詢只能選擇一個屬性。 我不確定您要做什么,但您必須重新編寫如下內容:
SELECT NUMBER
, STATUS
, ID
, SUM(CASE
WHEN STATUS like 'closed' and OPEN_TIME >= @DateFrom and CLOSE_TIME <= @DateTo
THEN 1
ELSE 0
END) as closen
, {same for the other counts}
FROM dbo.PROBS
GROUP BY NUMBER
, STATUS
, ID
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.