問題:
我原本有一個很好的查詢,但我現在不得不改變它來拉更多的領域。當我嘗試運行新查詢時,它會選擇一個字段名稱,並說我沒有將其作爲聚合函數的一部分。每次出現此錯誤時,我都可以將錯誤指定的字段添加到Group By語句,並且錯誤消息將選擇一個未包含的新字段。任何人有任何想法,我如何才能獲得與原始查詢相同的信息,只是有更多的字段?爲什麼我的查詢在我的Group By中需要更多的字段?
的查詢是如何工作的說明:
查詢是爲了拉一個記錄每個組不同的readings_miu_id S和ReadDate秒(PremID場是爲每個不同的相同readings_miu_id)。
原始查詢:
strSql3 = " SELECT Distinct readings_miu_id, ReadDate, PremID " & _
"INTO analyzedCopy2 " & _
"FROM analyzedCopy "
DoCmd.SetWarnings False
DoCmd.RunSQL strSql3
DoCmd.SetWarnings True
新查詢:
strSql3 = " SELECT Top 1 readings_miu_id, Reading, ReadDate,Format([MIUtime],'hh:mm:ss') AS ReadTime,MIUwindow,SN,Noise,RSSI,ColRSSI,MIURSSI,Firmware,CFGDate,FreqCorr,Active,MeterType,OriginCol,ColID,Ownage,SiteID,PremID , Neptune_prem.prem_group1, Neptune_prem.prem_group2,ReadID " & _
"INTO analyzedCopy2 " & _
"FROM analyzedCopy " & _
"Group By readings_miu_id, ReadDate, PremID " & _
"Order By readings_miu_id, ReadDate, ReadID, PremID "
DoCmd.SetWarnings False
DoCmd.RunSQL strSql3
DoCmd.SetWarnings True
你爲什麼分組?在查詢中似乎沒有任何聚合。 – YonahW 2009-07-17 19:58:27
因爲我需要每個分組的不同readings_miu_id/ReadDate組合的TOP 1記錄,而且之前我曾告訴過,使用Group By語句是一種做法。 – Bryan 2009-07-17 20:18:43