As Amit stated, you can do that by using an enrichment activity. For example, query your recipients, then place an enrichment activity connected to the query.
Now, add a file loading activity, and connect it to the enrichment activity as well.
In the enrichment, you can select which inbound set of data is the primary one (that would be the query one I guess), and create reconciliation conditions with the data coming from your file. Then select the columns from the file that you want to add to your recipient data.
All the additional columns will be available in the personalization fields of your delivery.
Amit's link is great for AC Classic.
If you are using AC Standard instead, or if you want a more comprehensive example of how it works event if you use AC Classic, please see the example in this page Adobe Campaign Help | Enrichment . The idea is basically the same for this simple example in AC Classic and AC Standard, even if the UI changes.
Hope this helps. Let us know how you do with that,
This is possible and we do the same most of the time. Read this document for more details
Enriching data . The idea is quite simple to enrich your base query using additional data from list or file activity and add a column field1 with the data from your file and this data will be available as targetData.field1 in your query.