0
我有一個名爲ECD表是這樣的:更新,而無需創建一個物理表
Cle2 Mont Lettrage
acbd.... +8,36 Suspens
abcd... -8,36 Suspens
dced.. +12,89 Suspens
dced.. -12,89 Suspens
凡
Cle2
是標識表中屬於同一組的記錄的字段
Mont
是存儲每條記錄數量的字段
Lettrage
是存儲標籤的字段,該標籤將根據我的查詢的結果而改變。
我必須做的基本上是一羣由Cle2並在同時和蒙特(Sum(Mont)
)的值,然後檢查是否在Mont值相加,並通過cle2
分組都等於零或不ECD表。如果它們等於零,我更新Lettrage
將這些記錄標記爲OK,如果不是,我將這些記錄標記爲SUSPENS!
我在訪問已經做到了這一點,但代碼是不那麼有效了什麼我基本上做的是:
1,創建一個新的表名爲provisional
2,插入此表中選擇的值查詢
代碼:
INSERT INTO Provisor
SELECT Cle2 As Cle2p, Sum(MONTANT_ORACLE) AS Sum
FROM ECD
GROUP BY Cle2
3,創建一個表ECD2,空,與同領域的ECD
4,插入此表中的連接語句是這樣的結果:
代碼:
INSERT INTO ECDlet1
SELECT Provisor.lettrage As Let2, ecd.*
FROM Provisor
LEFT JOIN ECD ON Provisor.[Cle2p]=ECD.Cle2
5,然後清理數據庫,並用正確的標籤
所以更新Lettrage
我想要做的是做這樣的事情,而不創建所有這些愚蠢的物理表 我想強調我使用CurrentDb.Execute語句在Visual Basic中執行查詢。
預先感謝您爲您解答!
這是很好的!謝謝!!!! – jsirico 2012-05-04 10:24:04