mysql - Updating Table2 when data found in table1 -


forgive me if make fool of myself still new mysql queries beyond "basic" kind. have 2 tables of data.

table 1 has data parsed using load , table 2 has data manually entered user information. pulled automatically | delimited file twice day.

the following columns in table1 have data need verify against (there more columns these):

sendid |  recid | transamt | transdate | transstatus 

and following columns table2:

userid | username | currentcapacity | maxcapacity 

what i'm trying run update userid curentcapacity increased one, when userid found in sendid or recid when transstatus = active. i've tried following:

update table1,table2 set table2.currentcapacity=table2.currentcapacity+1  ( table2.transstatus="active" , (table2.userid = table1.sendid or table1.recid)) 

this works , currentcapacity increased 1, increased one. effect i'm going set currentcapacity equal sum of transstatus="active".

i tried following , returns "#1111 - invalid use of group function" error:

update table1,table2 set table2.currentcapacity=sum(table1.transstatus)  ( table2.transstatus="active" , (table2.userid = table1.sendid or table1.recid)) 

any suggestions or guidance?

give try if gives desired result, (not manually tested)

update  table2 b         inner join         (             select  id, sum(transstatus = 'active') total                                 (                         select  sendid id, transstatus table1                         union                         select  recid id, transstatus table1                     ) x             group   id         ) on b.userid = a.id set     b.currentcapacity = a.total 

Comments

Popular posts from this blog

jquery - How can I dynamically add a browser tab? -

node.js - Getting the socket id,user id pair of a logged in user(s) -

keyboard - C++ GetAsyncKeyState alternative -