在MS Access我有表EVO可變VT每人每月國家:子查詢提供了錯誤的參數無效運作
EVO:
國家,月,VT
阿富汗, 1,20
阿富汗2,2 25
阿富汗3,15
烏克蘭1,10
烏克蘭2,440
烏克蘭3,50
我試着計算變量vt的月變化。每個國家。
SELECT b.ctryname_nl, b.mth, b.vt,
(SELECT Top 1 a.vt
FROM evo a
WHERE a.mth > b.mth and a.ctryname_nl = b.ctryname_nl
ORDER BY a.ctryname_nl, a.mth) AS Nextvt,
Nextvt-vt AS change
FROM evo b
爲什麼Access會給函數提供錯誤無效參數?
如果你考慮'SELECT * FROM evo b',就很明顯'Nextvt'不在範圍內(如果你假定從左到右的屬性創建順序,那麼你錯了)。查看@Gordon Linoff的答案,他使用子查詢來創建一個額外的範圍級別,以便現在可以使用'SELECT Nextvt from e'。 – onedaywhen