mysql - How can I SQL Join against my user table in multiple columns? -


i have query populate datatable. database table has multiple columns list id user table. case_officer, created_by, modified_by , location_user_id. whenever deal 1 of columns, want return rank , last name of user user_account table instead of user_id. i'm getting lost in concat , join language. here have far:

select sql_calc_found_rows item.item_id      , item.item_code      , item.check_out_flag      , item.created_by      , item.creation_date      , concat(user_account.rank, " ", user_account.last_name) case_officer      , lookup_casetype.short_description case_type      , item.incident_number      , lookup_itemstatus.short_description item_status      , lookup_finaldisposition.short_description final_disposition      , lookup_danger.short_description danger_flag      , lookup_mso.short_description most_serious_offense      , item.item_description      , lookup_itemtype.short_description item_type      , lookup_drugpackaging.short_description drugs_packaging_type      , item.drugs_substance, item.drugs_weight      , item.make, item.model, item.caliber, item.serial, item.money_value      , item.year, item.registration      , lookup_state.short_description registration_state      , lookup_color.short_description color, item.name_1      , item.name_2, item.name_3, item.name_4      , lookup_nametype.short_description name_1_type      , lookup_nametype.short_description name_2_type      , lookup_nametype.short_description name_3_type      , lookup_nametype.short_description name_4_type      , item.note, item.recorder_data, item.recovery_info      , location.short_description location_id      , lookup_itemclass.short_description item_class_id      , concat(user_account.rank, " ", user_account.last_name) modified_by      , item.modified_date, location_user_id, item.deleted_flag, item.recovery_datetime item left join lookup_itemstatus on lookup_itemstatus.item_status_id = item.item_status left join lookup_casetype on lookup_casetype.item_type_id = item.case_type left join lookup_finaldisposition on lookup_finaldisposition.finaldisposition_id = item.final_disposition left join lookup_danger on lookup_danger.danger_id = item.danger_flag left join lookup_mso on lookup_mso.mso_id = item.most_serious_offense left join lookup_itemtype on lookup_itemtype.item_type_id = item.item_type left join lookup_drugpackaging on lookup_drugpackaging.drug_packaging_id = item.drugs_packaging_type left join lookup_state on lookup_state.state_id = item.registration_state left join lookup_color on lookup_color.color_id = item.color left join lookup_nametype on lookup_nametype.name_type_id = item.name_1_type , item.name_2_type , item.name_3_type , item.name_4_type left join location on location.location_id = item.location_id left join lookup_itemclass on lookup_itemclass.item_class_id = item.item_class_id left join user_account on (user_account.user_account_id = item.case_officer)  order item.item_code desc limit 0, 150 

... works fine case_officer, i'm not sure how same thing modified_by, created_by , location_user_id without error.

any appreciated!

looks need second join user_account table. @ least 1 of references need table alias disambiguate references. i'd give alias both references... co case_officer reference , mb modified_by reference. follow same pattern other joins same table.

e.g.

select ...      , ...      , concat(co.rank, " ", co.last_name) case_officer      , ...      , concat(mb.rank, " ", mb.last_name) modified_by      , ...      , concat(cb.rank, " ", cb.last_name) created_by      , ...      , concat(lu.rank, " ", lu.last_name) location_user_id      , ...  ... left join user_account co on (co.user_account_id = item.case_officer) left join user_account mb on (mb.user_account_id = item.modified_by) left join user_account cb on (cb.user_account_id = item.created_by) left join user_account lu on (lu.user_account_id = item.location_user_id) 

Comments

Popular posts from this blog

javascript - Bootstrap Popover: iOS Safari strange behaviour -

Magento/PHP - Get phones on all members in a customer group -

session - Logging Out Using PHP -