We may earn an affiliate commission when you visit our partners.
Missak Boyajian

This is a course intended for software engineers and data analysts that want to learn more about Relational Databases and SQL It covers both basic and advanced SQL concepts and theories. The course is intended for both Junior and Senior Level Engineers and is purely focused on SQL and writing queries.

PostgreSQL will be used in this course. But the theories you learn can be applied in any Relational Database such as SQL Server or MySql

Read more

This is a course intended for software engineers and data analysts that want to learn more about Relational Databases and SQL It covers both basic and advanced SQL concepts and theories. The course is intended for both Junior and Senior Level Engineers and is purely focused on SQL and writing queries.

PostgreSQL will be used in this course. But the theories you learn can be applied in any Relational Database such as SQL Server or MySql

All the sections are explained by one or more examples. I used a sample database that had students, courses, registrations and instructors records. Learning by doing examples is a much better technique than just studying a theory.

This course contains lectures and exercises. You'll get immediate practice on all of the different topics and features that you learn.

You will learn about:

  • Selecting Data

  • Aggregate Functions

  • Built in Functions

  • Joins

  • Dates

  • Schema and Data

  • CRUD Operations

  • Transactions

  • Arrays in Postgres

  • JSONs in Postgres

  • And More.

Data is the core of an application. Any application that you see on your phone or on your website uses some storage somewhere. Having a good database design and queries is very crucial for any application. This course focuses mainly on the querying part.

At the end of the course, you should be able to:

  1. Master basic query syntax and functionality: Students will learn the syntax of basic SQL queries, including They will also gain an understanding of how to filter and sort data, and how to use basic functions and operators.

  2. Develop proficiency in advanced querying techniques: Students will learn how to write more complex queries, including subqueries, inner and outer joins, and aggregations. They will also learn how to use advanced functions and operators such as CASE statements, window functions, and regular expressions.

  3. Optimize queries for performance: Students will learn how to optimize queries for faster execution, including indexing strategies, query planning and execution, and common performance issues to avoid.

  4. Apply queries to real-world scenarios: Students will learn how to apply their query skills to solve real-world problems. They will also explore best practices for data modeling and query design to ensure their queries are accurate and efficient.

Enroll now

What's inside

Learning objectives

  • Learn sql concepts with postgresql.
  • Write sql queries to retrieve data.
  • Gain a comprehensive understanding of postgresql, including topics such as window functions, aggregates, and joins.
  • Understand how to perform date-related calculations and manipulations in postgresql.
  • Learn how to work with arrays and json in postgresql.
  • Learn how to create databases, tables, columns and data using postgresql.
  • Learn by solving 55 exercises!

Syllabus

Introduction
Prerequisites
Working Data
Setup
Read more
Database Setup
In this section, you will learn the fundamentals of querying data in a database. By the end of the section, you will have a solid understanding of how to retrieve data from a database using SQL.
Select
Select Multiple



Order By
Avg
Limit and Offset
Selecting Constant Columns
IS NULL
Or/And
Not
Between
In
Any/Sum
Alias
Exists
Count
Distinct
Like
Case When
Filter
Querying Exercises
Select Statement
Selecting Multiple Columns
OR/AND Operator
Not Equal To
In Operator
Using Where Statement
Like Operator
String Operators
Lower - Upper
Initcap
Concat
Left
Right
Substring
Length
Group By
Replace
Cast
Inner Join
Trim
Split_Part
Function Exercises
Lowercase
Aggregates
Min
Max
Sum
Group By Multiple Columns
Having
Over
Aggregates Exercises
Joins
Union
Union All
Left Join
Joins Exercises
Left Joins
Dates
Current Datetime
AT TIME ZONE
EXTRACT
DATE_PART
DATE_TRUNC
Date Differences
AGE
TO_CHAR
TO_DATE
INTERVAL
make_interval
Working with JSON
Inserting JSON as a Value
Selecting a JSON Property
Selecting a Sub Property
Json Aggregate
Json Build Object
Working with Arrays

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Uses PostgreSQL, but the theories taught are applicable to other relational databases like SQL Server or MySQL, making it broadly useful
Includes lectures and exercises, providing immediate practice on different topics and features, which reinforces learning and skill development
Covers topics such as window functions, aggregates, and joins, which are essential for advanced data manipulation and analysis
Teaches how to optimize queries for performance, including indexing strategies and query planning, which is crucial for efficient database management
Focuses on the querying part of database management, which is critical for extracting valuable insights from data in real-world applications
Emphasizes learning by doing with examples using a sample database of students, courses, registrations, and instructors, which enhances practical understanding

Save this course

Save Mastering PostgreSQL: Learning By Real Examples to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Mastering PostgreSQL: Learning By Real Examples with these activities:
Review Relational Database Concepts
Reinforce your understanding of relational database concepts, which are fundamental to understanding PostgreSQL and SQL.
Browse courses on Relational Databases
Show steps
  • Review the definitions of primary keys, foreign keys, and indexes.
  • Practice designing simple database schemas.
Read 'PostgreSQL Up and Running' by Regina O. Obe and Leo S. Hsu
Gain a deeper understanding of PostgreSQL administration and advanced features.
Show steps
  • Read the chapters on installation, configuration, and basic usage.
  • Explore the chapters on advanced features like replication and performance tuning.
Review 'SQL Antipatterns' by Bill Karwin
Learn about common SQL mistakes and how to avoid them, leading to better query design and performance.
Show steps
  • Read the introduction and the first few chapters covering common antipatterns.
  • Identify antipatterns that you might be prone to making.
Four other activities
Expand to see all activities and additional details
Show all seven activities
SQLZoo PostgreSQL Tutorial
Practice SQL queries using the SQLZoo PostgreSQL tutorial to reinforce your understanding of the syntax and concepts covered in the course.
Show steps
  • Work through the SQLZoo PostgreSQL tutorial, completing the exercises for each section.
  • Focus on the sections covering joins, aggregates, and subqueries.
Create a SQL Cheat Sheet
Compile a cheat sheet of common SQL commands and functions to serve as a quick reference guide.
Show steps
  • Gather the most important SQL commands and functions from the course materials.
  • Organize the commands and functions into logical categories.
  • Write a brief description of each command and function, along with an example of its usage.
Design a Database for a Social Media App
Apply your knowledge by designing a database schema for a social media application, including tables for users, posts, comments, and likes.
Show steps
  • Define the entities and relationships in the social media application.
  • Create a database schema with appropriate tables, columns, and data types.
  • Write SQL queries to retrieve data from the database, such as fetching a user's posts or comments.
Create a PostgreSQL Tool Collection
Gather useful tools and resources for working with PostgreSQL, such as GUI clients, command-line utilities, and online documentation.
Show steps
  • Research and identify useful tools for working with PostgreSQL.
  • Create a list of tools with descriptions and links to their websites.
  • Organize the tools into categories, such as GUI clients, command-line utilities, and online documentation.

Career center

Learners who complete Mastering PostgreSQL: Learning By Real Examples will develop knowledge and skills that may be useful to these careers:
Database Administrator
A database administrator is responsible for the performance, integrity, and security of a database. This role requires a deep understanding of SQL, database design, and querying. This course, Mastering PostgreSQL, provides a strong foundation in these areas, specifically covering SQL concepts, query optimization, and working with data types such as JSON and arrays. The course also covers essential database operations such as data retrieval, aggregation, and manipulation, all of which are directly relevant to a database administrator's daily tasks. Anyone eager to become a successful database administrator will find that this course is particularly valuable.
Data Analyst
The role of a data analyst involves extracting, cleaning, and analyzing data to provide insights. This position often requires proficiency in SQL to query and manipulate data from relational databases. Mastering PostgreSQL is an ideal choice for aspiring data analysts, as it covers essential SQL concepts, including data selection, aggregation, joins, and various functions. The course's focus on practical exercises and real-world examples ensures that those intending to become a data analyst gain hands-on experience in writing robust and efficient queries. This course also covers advanced SQL techniques, which are vital for extracting meaningful data from complex datasets.
Database Developer
Database developers design and implement database systems and write SQL queries to support business applications. This role demands strong knowledge of SQL, database design, and data modeling. Mastering PostgreSQL helps build competency in SQL, with a focus on query design and practical data handling. The course covers essential SQL concepts, such as data retrieval, aggregation, joins, and transactions, which are all vital for a database developer. Learning about JSON and array data types can also add value. This course should be considered by anyone determined to become a database developer.
Software Engineer
A software engineer often works with databases as part of software development. This role requires the ability to design and implement database schemas, as well as write efficient SQL queries to access and manipulate data. This course, Mastering PostgreSQL, is particularly helpful since it provides practical knowledge of SQL, focusing on query design, optimization, and data manipulation. The course’s coverage of advanced topics like window functions, JSON handling, and array manipulation, provides software engineers with the skills to manage data effectively within their applications. Taking this course will be a boon to anyone who aims to be a software engineer.
Data Engineer
Data engineers build and maintain data pipelines, often working extensively with databases and SQL. This role requires a deep understanding of database systems and writing complex SQL queries for data transformation and retrieval. Mastering PostgreSQL is a good course for those aspiring to become data engineers, as it focuses on the practical aspects of querying, data manipulation, and performance optimization in SQL using PostgreSQL. The course also covers advanced SQL concepts such as window functions and JSON handling, which are often used in data pipelines. A data engineer would do well to take this course.
Data Scientist
Data scientists frequently use SQL to pull data from databases for analysis and model building. A data scientist must be comfortable writing SQL queries to extract and transform data. This course helps build a foundation in SQL, covering essential concepts like joins, aggregates, and functions using PostgreSQL. The course emphasis on practical exercises and real-world examples using a sample database will be useful to any aspiring data scientist, allowing them to gain valuable experience in working with data effectively. The sections on JSON and arrays would also be useful to a data scientist.
ETL Developer
An ETL developer, or extract, transform, and load developer, is responsible for building data pipelines to retrieve and load data into databases. An ETL developer uses SQL to perform data transformations. Mastering PostgreSQL should be particularly useful for anyone wanting to become an ETL developer as it focuses on SQL and database querying. This course covers important SQL concepts, including data selection, aggregation, joins, and functions. The course's focus on practical exercises will also help with the hands-on nature of ETL development.
Backend Developer
Backend developers are responsible for the server-side logic of applications, which often includes interacting with databases. A backend developer will need to write SQL queries for data retrieval, modification and storage. Mastering PostgreSQL provides a great foundation, covering SQL concepts, query optimization, and data manipulation, which are all crucial for a backend developer. The course covers essential SQL concepts, such as data selection, aggregations, and joins, as well as data types such as JSON and arrays. Anyone hoping to become a backend developer will find that a course in SQL is beneficial.
Business Intelligence Analyst
A business intelligence analyst uses data to inform business decisions, often relying on SQL to extract insights. This role requires a solid understanding of database querying and data manipulation. Mastering PostgreSQL provides a great foundation here, teaching essential SQL concepts, including data selection, aggregation, and joins. The course's focus on practical exercises ensures that those who intend to become business intelligence analysts will gain hands-on experience querying relational databases and producing reports. This course may be useful for this role.
Analytics Consultant
An analytics consultant helps businesses make data-driven decisions. They often need to query databases using SQL to extract and analyze data. Mastering PostgreSQL may be beneficial for an analytics consultant since it offers a solid grounding in SQL, covering essential database concepts and query techniques. This course gives practical experience in writing SQL queries via sample databases in order to retrieve and manipulate data. The insights provided in this course are useful for an analytics consultant.
Reporting Analyst
Reporting analysts create reports from data stored in databases, frequently using SQL to extract the necessary information. This requires strong SQL skills to select, filter, and aggregate data. Mastering PostgreSQL provides a path to gaining such skills, as it focuses on practical query writing, which allows those who want to be reporting analysts to write efficient SQL queries. The course covers essential SQL concepts such as data selection, joins, aggregations, and functions. Anyone interested in becoming a reporting analyst will find it useful to take a course focused on SQL and database querying.
Machine Learning Engineer
Machine learning engineers often need to extract and preprocess data from databases as part of the model development and deployment process. This requires writing SQL queries and understanding how databases work. Mastering PostgreSQL may provide useful skills since the course focuses on learning SQL and database concepts. The course's practical exercises and real-world examples will help those wanting to become a machine learning engineer understand how to work with data in a database. This course covers basic SQL syntax to perform queries, which a machine learning engineer should know.
Quantitative Analyst
A quantitative analyst, or quant, develops mathematical models for financial markets, which often requires extracting and analyzing data from databases. This requires knowledge of databases and SQL. Mastering PostgreSQL could be useful because it focuses on SQL, query writing, data handling, and database concepts. The course's practical exercises will help give a quantitative analyst experience with databases. In particular, the features of SQL that are covered, such as functions and aggregates, are helpful.
Technical Consultant
Technical consultants often work with databases as part of implementing software solutions for clients. This role requires the ability to understand SQL and how to perform data analysis by querying databases. Mastering PostgreSQL covers many SQL concepts, including data selection, aggregation, and joins. This course may be useful for those who want to become technical consultants. The course’s focus on practical examples and exercises provides a hands-on understanding of SQL and databases.
System Analyst
System analysts work closely with IT systems and databases to understand how to best meet business needs. This role may require the ability to query and analyze data from databases. Mastering PostgreSQL may be helpful since it covers SQL concepts, database querying, and data manipulation. The course's practical exercises and real-world examples will help a system analyst understand the capabilities of databases and how SQL is used. Mastering SQL and gaining hands-on experience with a course like this may help any system analyst in their role.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Mastering PostgreSQL: Learning By Real Examples.
Provides a comprehensive introduction to PostgreSQL, covering everything from installation and configuration to advanced features like replication and performance tuning. It valuable resource for both beginners and experienced database administrators. This book is commonly used as a textbook at academic institutions. It adds more depth to the course by covering administration topics.
Identifies common mistakes made when working with SQL databases. It provides practical advice on how to avoid these pitfalls and write more efficient and maintainable SQL code. It valuable resource for understanding query optimization and database design principles. This book is best used as additional reading to supplement the course.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser