Issue with the TOP 1 query
Is it possible to achieve next thing without using views, but just one single query? I have two tables: TableA->TanbleB (1-many) ON TableA.Id = TableB.TableAId I need to update one field in Table A (TableA.Field1) for records in TableA that satisfy condition on one field in tableA (WHERE TableA.Field2=SomeValue) . TableA.Field1 will be updated from TableB with value that is last inserted (last inserted value in related records to TableA). I will put an example: UPDATE TableA a SET Field1 = (SELECT TOP 1 b.Feild1 * b.Field2 FROM TableB b WHERE b.TableAId = a.id) WHERE field2 = 1 I know Above example doesn't work, but I have many ways tried using INNER JOIN and failed. I had an idea to use something like this: UPDATE TableA INNDER JOIN ( SELECT ... FROM TABLE B) ON TABLEA.Id= TableB.TableAId SET .... But the 2ns query should return 1 record for each DISTINCT TableAId, but only the last inserted. I hope I am making some sense here. Thanks in advance.
Here is some SQL that will do what you want UPDATE T1 INNER JOIN T2 ON T1.ID = T2.T1ID SET T1.F2 = [T2].[F2]*[T2].[F3] WHERE (((T1.F1)="ABC") AND ((T2.ID)=DMax("[ID]","[T2]","[T1ID]=" & [T1].[ID]))); This predicated on T1.ID being the primary key for T1 and T2.T1ID being a index field in T2
One of the flaws in Access is that you can't run an "UPDATE" query based on a "SELECT" query, it will usually give the error: Operation must use an updateable query The only way around is as you say to create a view of the "SELECT" query and then inner join this on your table, Access is then working with a static recordset and can handle the "UPDATE" query ok Alternatively you could write a VBA procedure to step through line by line with the Recordset. Best of luck : ) UPDATE: SELECT b.TableAId, b.Feild1 * b.Field2 INTO tblView FROM TableB As b WHERE b.field2 = 1
Mystery HAVING clause
MS Access 2003 - Sparkline Graphs in Microsoft Access
How to extract the schema of an Access (.mdb) database?
Using loop in a Access Query
Access 2007 Empty Query Quirk
MS Access: How can I automatically reduce Text columns to an appropriate size for the data stored in them?
No max(x,y) function in Access
Why does a report throw an error when the corresponding query doesn't?
Programmatically Search an Access Listbox control's Items Based Off of a Textbox Entry
Auto populate a combobox
How can I add a button to an Access report to export it to Excel / PDF?
Access Caching ODBC connection settings
How to build the search form in ms-access
MS Access 2007 3044 Error
Assigning a Keyboard shortcut to a button in an Access 2007 form
ShellExecute() returns error code 5 when trying to open mdb file >10MB