2017-01-26 11 views
0

私はアクセスとvbaで遊んでいます。私は私はImが一つにグループにこれらの行をしようと、2つの行が返され得るデータシートビューを表示する場合はQuery Access 2007グループを1つの行に更新する

UPDATE tblLoadSummary INNER JOIN tblLoadingListItems ON (tblLoadSummary.salesno = tblLoadingListItems.salesno) AND (tblLoadSummary.loadnolink = tblLoadingListItems.loadnolink) SET tblLoadSummary.[Cust O/N] = [tblLoadingListItems].[Cust O/N], tblLoadSummary.traderid = [tblLoadingListItems].[traderid], tblLoadSummary.street = [tblLoadingListItems].[street], tblLoadSummary.[zone] = [tblLoadingListItems].[zone], tblLoadSummary.salesno = [tblLoadingListItems].[salesno], tblLoadSummary.[Customer Ref] = [tblLoadingListItems].[Customer Ref], tblLoadSummary.DeliveryAddress = [tblLoadingListItems].[DeliveryAddress], tblLoadSummary.Postcode = [tblLoadingListItems].[Postcode], tblLoadSummary.SumOfnoofpacks = Sum([tblLoadingListItems].[packs1]), tblLoadSummary.SumOfnoofboxes = Sum([tblLoadingListItems].[noofboxes]), tblLoadSummary.contact = [tblLoadingListItems].[contact], tblLoadSummary.telephone = [tblLoadingListItems].[telephone], tblLoadSummary.fax = [tblLoadingListItems].[fax], tblLoadSummary.email = 
[tblLoadingListItems].[email], tblLoadSummary.deliverycontact = [tblLoadingListItems].[deliverycontact], tblLoadSummary.deliverytelephone = [tblLoadingListItems].[deliverytelephone], tblLoadSummary.deliveryfax = [tblLoadingListItems].[deliveryfax], tblLoadSummary.deliveryemail = [tblLoadingListItems].[deliveryemail], tblLoadSummary.acknowaddress = [tblLoadingListItems].[acknowaddress] 

WHERE (((tblLoadSummary.salesno)="SM-100118") AND ((tblLoadSummary.loadnolink)=32232)) 

下のクエリを使用してtblLoadSummaryへとtblLoadingListItemsからグループ行に更新するstruggleingです。 WHEREの後にGROUP BYを追加しようとすると、すべてのフィールドの演算子が見つからないという構文エラーが発生します。

誰かが正しい方向に向いていますか?

+0

ものです。この

update t set .... from tblLoadSummary t inner join tblLoadSummary s on ... 

のようにそれを試してみてくださいエラーですか?私はアクセスに精通していないが、私はあなたがテーブルの結合セットを更新できないとは思わない...その更新テーブルセット...参加する... – Moudiz

+0

更新クエリにグループ化を追加する方法はありません。クエリの集約は常に読み取り専用です。 – Gustav

+0

したがって、テーブルaに2重複行(バー1のqtyフィールド)がある場合、テーブルbの1行を既存の情報+合計qtyで更新できませんか? – Bunion

答えて

1

私がアクセスできることを確認していないが、このようなアップデートと、おそらくその間違ったを開始:

Update tblLoadSummary inner join... 

が、これは完全なクエリ

UPDATE t-- tblLoadSummary 
    SET t.CustO/N = s.CustO/N, 
     t.traderid   = s.traderid, 
     t.street   = s.street, 
     t.zone = s.zone, 
     t.salesno   = s.salesno, 
     t.CustomerRef = s.Customer Ref, 
     t.DeliveryAddress = s.DeliveryAddress, 
     t.Postcode   = s.Postcode, 
     t.SumOfnoofpacks = Sum(s.packs1), 
     t.SumOfnoofboxes = Sum(s.noofboxes), 
     t.contact   = s.contact, 
     t.telephone   = s.telephone, 
     t.fax    = s.fax, 
     t.email    = s.email, 
     t.deliverycontact = s.deliverycontact, 
     t.deliverytelephone = s.deliverytelephone, 
     t.deliveryfax  = s.deliveryfax, 
     t.deliveryemail  = s.deliveryemail, 
     t.acknowaddress  = s.acknowaddress 
from tblLoadSummary as t 
INNER JOIN tblLoadingListItems as s ON 
(t.salesno = s.salesno) AND (t.loadnolink = s.loadnolink) 
WHERE (((t.salesno) = "SM-100118") AND 
     ((t.loadnolink) = 32232)) 
関連する問題