Я почти закончил с этим, только несколько последних икот. Теперь мне нужно удалить все записи из таблицы, кроме верхней 1, где readings_miu_id - это столбец «DISTINCT». Другими словами, мне нужно удалить все записи из таблицы, кроме первого DISTINCT readings_miu_id. Я предполагаю, что все, что мне нужно сделать, это изменить базовый оператор удаления:
DELETE FROM analyzedCopy2
WHERE readings_miu_id = some_value
Но я не могу понять, как изменить часть some_column = some_value на что-то вроде:
where some_column notequal to (select top 1 from analyzedCopy2 as A
where analyzedCopy2.readings_miu_id = A.readings_miu_id)
и затем мне нужно выяснить, как использовать инструкцию UPDATE для обновления таблицы (analysisCopy2) из запроса (именно там в настоящее время находятся все значения, которые я хочу сохранить в столбце RSSI в таблице analysisCopy2 таблицы). Я пробовал это:
UPDATE analyzedCopy2 from testQuery3 SET analyzedCopy2.RSSI =
(select AvgOfRSSI from testQuery3 INNER JOIN analyzedCopy2 on analyzedCopy2.readings_miu_id = testQuery3.readings_miu_id where analyzedCopy2.readings_miu_id = testQuery3.readings_miu_id)
where analyzedCopy2.readings_miu_id = testQuery3.readings_miu_id
но, очевидно, я не могу использовать FROM внутри оператора обновления. Есть мысли?
Я уверен, что я иду по этому очень нестандартному (и, возможно, если не возможно, ошибочному пути), но мне не разрешают использовать vb.net2008, чтобы извлекать и манипулировать, а затем сохранять данные, как я Я бы хотел, чтобы я застрял прямо сейчас, используя SQL-операторы в ms-access, что является хорошим опытом обучения (даже если попытка сделать такие странные вещи, которые мне приходилось делать в SQL-операторах, заставляет меня биться с головой моя колода образно конечно )