我一直在研究查詢,因此在子查詢中,我在特定條件下選擇列Cust_Status
。子查詢在case語句中返回多於1行
select distinct
C.Cust_Code [Cust #],
C.Cust_Start_Date [Start Date],
C.Cust_End_date [End Date],
(select
Cust_Status = (case
when cast(CUST_UPDATE_DATE_LT as DATE) = cast('2017-01-23 00:00:00' as Date)
then 'V'
when cast(CUST_UPDATE_DATE_LT as DATE) = cast('2017-01-22 00:00:00' as Date)
then 'I'
end)
from tblCustomers) [Cust Status],
M.Machine_ID,
M.Machine_Location
from
tblCustomers C
inner join
tblMachine M on C.Cust_Mach_Pkey = M.Pkey
當我運行此查詢,我得到一個錯誤
子查詢返回的多個值誤差。
當我刪除子查詢內的情況下,它很好。但我相信在兩個日期條件下只有1條記錄。所以不知道我的子查詢如何返回多個值。請賜教。
(1)用你正在使用的數據庫標記你的問題。 (2)提供樣本數據和期望的結果。 (3)解釋你試圖實施的邏輯。 –
@戈登:發表一個3分的問題要求提供額外的細節,然後發佈一個否定提供它們的需求或動機的答案是沒有意義的。 –
你正在使用哪些DBMS?顯示的代碼無效(標準)SQL。 –