我正在尝试将表中的值插入到另一个现有表中,并且仅根据特定列按降序对我插入的值进行排序,同时将现有记录留在表的顶部。我怎么做?我尝试使用 Order By 语句,但是无论我使用要从中提取的表的列名还是目标表的列名,我都会收到错误消息。这也是使用 DoCmd.RunSQL 在 VBA 中运行的。
这是我现有的查询:
INSERT INTO AllMetersAvgRSSI
(longitude,latitude,AvgRSSI)
Select Prem.longitude, Prem.latitude, DataByColl.[Avg RSSI]
From [Prem]
Left Join DataByColl ON (Prem.meter_miu_id = DataByColl.[MIU ID])
Order BY [AvgRSSI]描述
最后结果
我继续摆弄这个,发现你可以使用一个订单,就像我上面展示的那样,完全按照我的想法去做。我显然遇到的问题是由于我想要排序的列的名称仅从 Avg RSSI 更改为 AvgRSSI。当我将目标表更改为与源表具有相同的字段名称时,它会对传入信息进行排序,同时保留现有信息。我还做了一个测试,我将目标表的名称更改为 AverageRSSI,它的工作方式相同。所以最后是字段的名称只有一个导致问题的空格不同。最后的查询是:
INSERT INTO AllMetersAvgRSSI
(longitude,latitude,[Avg RSSI])
Select Prem.longitude, Prem.latitude, DataByColl.[Avg RSSI]
From [Prem]
Left Join DataByColl ON (Prem.meter_miu_id = DataByColl.[MIU ID])
Order BY [平均 RSSI] 描述