Chapter 1, "Introduction to PostgreSQL and SQL," showed you some of the basics of retrieving and modifying data using PostgreSQL. In Chapter 2, "Working with Data in PostgreSQL," you learned about the many data types offered by PostgreSQL. This chapter has filled in some of the scaffolding?you've seen how to create new databases, new tables, and new indexes. You've also seen how PostgreSQL solves concurrency problems through its multi-versioning transaction model.

The next chapter, Chapter 4, "Query Optimization," should help you understand how the PostgreSQL server decides on the fastest way to execute your SQL commands.

    Part II: Programming with PostgreSQL