3
當我運行鍼對MSSQL 2000MS SQL:嵌套的選擇 - 神祕的「無效列名稱」錯誤
SELECT
DISTINCT(Email),
(SELECT TOP 1 ActivityID
FROM Activity aa, ActivityType tt
WHERE aa.ActivityTypeId = tt.ActivityTypeId
AND aa.ConsumerID = c.ConsumerID
AND tt.ActivityType = 'Something_OptIn') optin,
(SELECT TOP 1 ActivityID
FROM Activity aa, ActivityType tt
WHERE aa.ActivityTypeId = tt.ActivityTypeId
AND aa.ConsumerID = c.ConsumerID
AND tt.ActivityType = 'Something_OptOut') optout
FROM
Activity a,
Consumer c,
ActivityType t
WHERE
c.CountryID = '23'
AND t.ActivityType = 'Something_Create'
AND a.ActivityTypeId = t.ActivityTypeId
AND c.ConsumerID = a.ConsumerID
AND optin > 1
我收到以下錯誤
Server: Msg 207, Level 16, State 3, Line 1
Invalid column name 'optin'.
爲什麼會發生這種情況下查詢?我看不出爲什麼它會失效。
它只適用於一個嵌套的SELECT,但不適用於optin和optout。請參閱https://gist.github.com/71efc3aa5bff219e98d7。 – joar 2011-02-18 14:36:09