SEO is a cross between talking to a database and talking to a person. It helps to have an understanding of how database technology works, especially the nuances of database queries and SQL, the language of database storage, retrieval and analysis. Presenting information to Google in a way that flows well with a database improves your chances of early retrieval (ranking) but Google also has algorithms that prevent raw database style language from working. Natural language must also be incorporated and a message to people must have your database language embedded in it. This is a challenge because people don't care about the search aspect, just your message.