I'm trying to name a database table. This table will contain every specific information of a person. Those information will be different for each country.

So, I've two options




Which one is the correct option? There's a huge semantic difference between them?

  • In such contexts, per is a (somewhat jargonny) term meaning [as allocated] for each. It tends to be used in constructions like How much did the meal cost per person?, where the natural answer would be a single value X pounds (the same amount for each person). On the other hand, by is normally used in contexts like This is a list of average income by country, where it means listed by country (each different country appears once in the list, alongside the average income in that country). So almost certainly you want by for your table name, not per. – FumbleFingers Reinstate Monica Jun 3 '16 at 17:22

If it's a database table naming thing, and your table set-up is so that there is one entry with one piece of the same type of information per entry (but allows multiple entries per country), I would probably use nothing... or By if i really wanted to use something.

Personally, I think per denotes that there is only one thing per category-thing.
By denotes that there are multiple things and can be sorted by each category-thing.
I also feel like "By Country" is a phrase that is used much more commonly than "Per Country" but that depends on the usage and context.

Usually I name my relational database tables without any prepositions/conjunctions like "per" or "by".


or I would probably have done


(notice the singular form of "country" in this one)

Database naming has its own recommended conventions and you should not be looking for consulting in the "English language", but rather database naming conventions...

| improve this answer | |
  • I think I agree with what you're saying in the first couple of paragraphs. By implication, normal usages are There are several unpaid invoices per customer (simply indicating that each customer has several unpaid bills), as opposed to This is a list of unpaid invoices by customer (where the different specific number of unpaid invoices for each customer will be listed separately). But I don't see the point of the rest of the answer (I always used to use prepositions in table names like this; it's really a matter of personal preference or local standards). – FumbleFingers Reinstate Monica Jun 3 '16 at 18:12
  • its just a suggestion that you should take a look at the conventions already available. you are contemplating the HOW on database table naming, which is basically about creating/using a standard of sorts for database table naming, and that exact thing already exists as database table naming conventions and recommendations, which is built upon by many people over time. the point is, why not look up the reference that pertains exactly to your situation rather than to reinvent the wheel? you can still reinvent your wheel after looking at the conventions, AND you'll have better insight. – agent provocateur Jun 3 '16 at 20:08
  • All of this "should I use this word" or "should I use this preposition" or "how do i structure the table names" etc. are all covered already in those conventions along with the pros and cons. and there are several styles of conventions available for your choosing (and modification). – agent provocateur Jun 3 '16 at 20:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.