Nerdegutta's logo

nerdegutta.no

SQL 1: Introduction to SQL and Basic Queries

30.12.23

Programming

Lesson 1: Introduction to SQL and Basic Queries

Introduction

Welcome to the world of SQL, the language that empowers you to interact with databases and extract valuable information. In this lesson, we'll embark on a journey to understand the fundamentals of SQL, its purpose, and how to perform basic queries on databases. Whether you're a beginner or looking to reinforce your SQL skills, this lesson is designed to provide a solid foundation.

Overview of SQL

**Definition and Purpose:**
Structured Query Language (SQL) is a domain-specific language used to manage and manipulate relational databases. Its primary purpose is to facilitate the interaction between users and databases by enabling the retrieval, insertion, updating, and deletion of data. SQL is integral to database management systems (DBMS) such as MySQL, PostgreSQL, SQLite, and Microsoft SQL Server.

**Different SQL Dialects:**
SQL is a standard language, but various database vendors implement their own dialects with some unique features. Common SQL dialects include Transact-SQL (T-SQL), PL/SQL, and others. Despite differences, the core concepts remain consistent across these dialects.

Setting Up a Database

**Installation of Database Management System (DBMS):**
Before diving into SQL, it's essential to have a DBMS installed. Popular choices include MySQL, PostgreSQL, and SQLite. Installation steps may vary, but vendors typically provide user-friendly installers or package managers to streamline the process.

**Creating a Database:**
Once the DBMS is installed, creating a database is the next step. Databases serve as containers for tables, and each table stores related data. The CREATE DATABASE statement is used for this purpose.


-- Example: Creating a database named 'mydatabase'
CREATE DATABASE mydatabase;


Basic SQL Queries

**SELECT Statement:**
The SELECT statement is the core of SQL, allowing you to retrieve data from one or more tables. It can be as simple as selecting all columns from a table or specifying particular columns.


-- Example: Selecting all columns from a 'users' table
SELECT * FROM users;


**FROM Clause:**
The FROM clause indicates the source table(s) for the query. It defines the tables from which data should be retrieved.


-- Example: Selecting specific columns from a 'orders' table
SELECT order_id, product_name, quantity FROM orders;


**WHERE Clause:**
The WHERE clause filters data based on specified conditions. It narrows down the results to only include rows that meet the given criteria.


-- Example: Selecting users from 'customers' table where age is greater than 25
SELECT * FROM customers WHERE age > 25;


**ORDER BY Clause:**
The ORDER BY clause is used to sort the result set in ascending (ASC) or descending (DESC) order based on one or more columns.


-- Example: Sorting 'products' by price in descending order
SELECT * FROM products ORDER BY price DESC;


Examples

Let's reinforce these concepts with practical examples:

**Example 1: Retrieving data from a single table:**
Suppose we have a 'students' table with columns: student_id, name, age, and grade.


-- Retrieve all data from the 'students' table
SELECT * FROM students;


**Example 2: Filtering data with the WHERE clause:**
Consider a 'employees' table with columns: employee_id, name, position, and salary.


-- Retrieve employees with a salary greater than 50000
SELECT * FROM employees WHERE salary > 50000;


**Example 3: Sorting data using ORDER BY:**
Assume a 'products' table with columns: product_id, name, and price.


-- Retrieve products sorted by name in ascending order
SELECT * FROM products ORDER BY name ASC;


In this lesson, we've laid the groundwork for your SQL journey. You've learned what SQL is, how to set up a database, and the basics of querying data. In the next lesson, we'll delve into advanced queries and explore the power of SQL in greater depth.