Como posso resumir e substituir dados da coluna e fazer uma média de tudo em uma consulta de MS Access?
Pergunta
Estou puxando dados de uma tabela, chamada analyzedCopy, e usá-lo para o excesso de rito todas as informações em outra tabela chamada analisados. As colunas Eu estou triagem / filtragem / manipular, são readings_miu_id, ReadDate, ReadTime, RSSI. Estou neste momento a movimentação de dados de analyzedCopy para analisadas utilizando o seguinte sql que para obter apenas o último tempo (valor mais alto em ReadTime uma vez que é formatado para tempo militar) para cada par único de readings_miu_id e ReadDate.
SELECT readings_miu_id, Reading, ReadDate, ReadTime, MIUwindow, SN, Noise, RSSI, ColRSSI,MIURSSI,Firmware,CFGDate,FreqCorr,Active,MeterType,OriginCol,ColID,Ownage,SiteID,PremID, prem_group1, prem_group2,ReadID
INTO analyzed
FROM analyzedCopy AS A
WHERE ReadDate BETWEEN #04/21/09# AND #04/29/09# AND ReadTime= (SELECT TOP 1 analyzedCopy.ReadTime FROM analyzedCopy
WHERE analyzedCopy.readings_miu_id = A.readings_miu_id AND analyzedCopy.ReadDate = A.ReadDate
ORDER BY analyzedCopy.readings_miu_id, analyzedCopy.ReadDate, analyzedCopy.ReadTime DESC)
ORDER BY A.readings_miu_id, A.ReadDate, A.ReadTime DESC ;
Eu preciso adicionar a este código a capacidade de colocar em cima da mesa "analisados" um registro por readings_miu_id
ao alterar o ReadDate
para mostrar o intervalo de datas desejado (neste caso, seria preciso mostrar algo como "4/21 / 09 a 4/29/09" ) e, tendo também a média dos valores de RSSI para cada DISTINCT reading_miu_id
e inserindo que RSSI média no campo RSSI na tabela analisados.
Em uma tentativa de recapitular / visão geral, eu tenho um código para inserir em uma tabela todos os registros de outra tabela onde ReadTime
é o mais alto para cada readings_miu_id
única e ReadDate combonation. E eu preciso adicionar a este código a capacidade de tirar o RSSI média do já classificado (o passo na frase anterior) registros e inserir essa média em RSSI no analisados ??e inserir o intervalo de datas para o ReadDate
em análise.
Eu percebo que eu provavelmente estou pedindo um monte aqui e se eu preciso usar dois ou três passos diferentes ou código SQL isso é bom. o programa este está indo para não ser usado por muitas pessoas e meu chefe não se importa se o código é confuso ou que vai demorar um pouco para ser executado. Eu tremo por ter sido forçado a fazer as coisas de modo ineficiente e confuso, mas é o que eu estou sendo forçado a fazer.
Eu deveria ser capaz de usar o recurso sum()
lá para resumir os valores RSSI im só não sei como fazer isso enquanto dividindo a soma pela contagem para cada DISTINCT readings_miu_id
e ao mesmo tempo fazendo tudo o que eu preciso fazer para esses dados. Usando VB.NET 2008 e SQLServer i poderia executar cada linha através de algumas declarações de lógica para fazer o que eu preciso para os dados, mas não sei como fazer isso em uma instrução SQL ou VBA.
Editar:
Se eu não explicar algo bem o suficiente, por favor me avise e eu vou tentar corrigir e adicionar informações para o melhor das minhas habilidades.
Solução
Tratar do assunto de um problema de cada vez. Criar tabelas para cada etapa, AnalyzedStep1, AnalyzedStep2, e assim por diante.