> It had just never occurred to me that people who spend their entire lives talking to databases wouldn't know how to talk to them directly.
You're begging the question. Most people who use databases don't "spend their entire lives" talking to them.
Of course I've talked to databases "directly", tuned them, "alter"ed them, indexed them, replicated them, and so forth, but just happened to use logic at the application level instead of the SQL level for JOIN functionality.
Ok so hopefully the places where you used to work hired someone that wouldn't write horribly inefficient client-side code to join two tables together when its a SQL RDBMS, and sped up those applications|sites considerably.
You're begging the question. Most people who use databases don't "spend their entire lives" talking to them.
Of course I've talked to databases "directly", tuned them, "alter"ed them, indexed them, replicated them, and so forth, but just happened to use logic at the application level instead of the SQL level for JOIN functionality.