Programs

Complete SQL Tutorial for Beginners in 2023

Short for Structured Query Language, SQL (also pronounced – Sequel) is an extremely powerful tool for extracting insights and searching for specific information or trends from large amounts of data. Hence, SQL is an inseparable tool from the world of data science and analytics. It is a must-know for all aspiring data engineers, data analysts, and data scientists. SQL is also helpful for other fields such as full-stack web development and managing website data in a streamlined manner. 

Check out our free courses to get an edge over the competition.

The good news is that SQL is relatively easy to learn, mainly because it uses simple English-like sentences. So if you have no understanding of programming, SQL might be the perfect starting point for you and will help you transition to R, Python, and other similar languages more easily. 

In this article, let’s walk you through everything you need to know to get going with SQL. 

Explore our Popular Software Engineering Courses

What is Structured Query Language?

Structured Query Language (SQL), also pronounced ‘Sequel’, is a programming language that comes in handy during tasks that require communication and interaction with relational databases (RDBMS). RDBMS can be simply understood as a data structure that stores all the data in rows and columns. Such a collection of rows and columns make a table, and various tables are linked together using different keys to make up the entire database. 

Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs or Masters Programs to fast-track your career.

Different RDBMS are available today, including SQLite, MariaDB, Hive, IBM DB2, PostgreSQL, etc., and all of them use SQL to manage their data. While each of these databases tends to have its own version of SQL, the core remains the same – the primary functions and concepts don’t change. 

So, no matter what database you work on and which version of SQL is handed to you, by the end of this article, you’ll have enough understanding to get started with working on any RDBMS using SQL. 

Types of SQL Commands

All the SQL commands can be broken down into the following five types: 

Check out upGrad’s Advanced Certification in DevOps 

  • Data Definition Language (DDL)

    • CREATE
    • DROP
    • ALTER
    • TRUNCATE

In-Demand Software Development Skills

  • Data Manipulation Language (DML)

    • INSERT
    • UPDATE
    • DELETE
    • MERGE
  • Data Control Language (DCL)

    • GRANT
    • REVOKE

Check out upGrad’s Python Bootcamp

  • Transaction Control Language (TCL)

    • COMMIT
    • ROLLBACK
    • SAVEPOINT
  • Data Query Language (DQL)

    • SELECT

Let’s look at each of these types and all the crucial commands in more detail, using syntax and examples. 

Read our Popular Articles related to Software Development

Data Definition Language (DDL)

All the DDL commands are used to define the structure of the database and its various objects like views, tables, functions, etc. Programmers can modify, create, or drop any database object using DDL commands. Let’s look at the different DDL commands in detail:

  1. CREATE

This is used to create a database object such as a table, view, or function. The syntax for creating a new table is as follows:

In the above example, we have given our table the name STUDENTS, and it has six columns – ID, FIRST_NAME, LAST_NAME, GENDER, AGE, and DOB. All of these columns hold different types of data, and hence, they have different data types. There are also other constraints like PRIMARY KEY that we will cover later in the article. 

Another thing to note is the keyword ‘IF NOT EXISTS’, an optional clause that can be included to inform the RDBMS to create a table only if a table of the same name does not exist. This command is skipped from execution if a table with the same name exists.

To better understand the table creation process, let’s look at some more important and nuanced items like Data Types and Constraints. 

Data Types
Each table is composed of rows and columns. Every column stores a particular type of data known as data types. Data types can be understood as the rules and conditions applicable to that specific column – in the sense that data of only that type will be allowed in that column. 

While SQL works with many different data types, there are a few important ones that you must know. Those include: 

  • VARCHAR – This is short for Variable Character. Columns associated with VARCHAR data type can store alphabets, numbers, alphanumerals, and special characters. 
  • INT – This is short for Integer. Only whole numbers/integers are allowed under columns associated with INT. 
  • DATE – This data type is used in columns where you want to store dates. 
  • FLOAT – This stands for Floating-point Numbers. Columns associated with FLOAT can hold decimal numbers only. 
  • BOOLEAN – Columns associated with this data type can hold either 0 or 1, where 0 means False and 1 means True.

Constraints

Constraints are the restrictions or limitations applied to particular columns. These come in extremely handy when data integrity must be maintained among different tables. Some of the most important constraints that you should know about are: 

  • CHECK – For restricting the values that can be entered for a particular column. So, if you have a column “SALARY”, you can create checks that only positive values can be inserted. That way, trying to input negative values will give an error. 
  • NOT NULL – For ensuring that a particular column can not hold NULL values. 
  • UNIQUE – To ensure that all the entries in a particular column are unique and there are no repetitions. For example, this constraint could come in handy for the ID column of any table. 
  • PRIMARY KEY – This is a combination of UNIQUE and NOT NULL. The column associated with the primary key must hold unique values that are not NULL. A table can only have a single PK constraint. It can either be applied to single columns or a combination of different individual columns. 
  • FOREIGN KEY – For establishing relationships between tables. It helps create a hierarchy and parent-child relationship to make data access easier. A child table can reference values from the parent table by using a foreign key. Any value present in the parent table can be easily inserted into the child table. 

With that settled, let’s look at other DDL commands in SQL. 

  1. ALTER

This is used to modify the structure of an already present table. You can use this if you want to rename a column or a table, add new columns or change the data types of some columns. ALTER also allows you to remove or add constraints from tables. 

Here are some critical ALTER statements: 

  1. DROP

As the name suggests, this is used to remove any database object – like functions, views, tables, etc. The syntax for DROP is: 

DROP TABLE EMPLOYEES;

  1. TRUNCATE

This command removes all of the data at once from any table.

TRUNCATE TABLE EMPLOYEES;

Data Manipulation Language (DML)

These commands can modify, add, or remove data from the database. Unlike DDL, these don’t work on the table’s structure – instead, it works on its content. DDL commands include: 

  1. INSERT

This is used to insert data into the table. The syntax is: 

Data Manipulation Language (DML) Insert
Data Manipulation Language (DML) Insert
  1. UPDATE

This command is used to modify the already existing data in a table. The syntax is as follows: 

Data Manipulation Language (DML) - Update
Data Manipulation Language (DML) – Update
  1. DELETE

This command will remove the data from your table. However, it can also be used to delete specific columns or entries using the WHERE keyword. 

  • DELETE FROM STUDENTS WHERE ID = ‘STD10251’; — Removes only one record.
    DELETE FROM STUDENTS; — Removes all data from table.

Data Control Language (DCL)

DCL commands are used for accessing objects from one database using another database or schema. It includes the following commands: 

  1. GRANT

Used to provide access for database access to be accessed using a different schema/table. 

  1. REVOKE

Removes the granted access for objects. 

Transaction Control Language (TCL)

TCL commands are used to undo or save DML transactions into the database. These include: 

  1. COMMIT

This saves the last open transaction to the database. This could include delete, insert, update transactions. 

  1. ROLLBACK

This is used to roll back or undo a transaction that has not yet been committed. 

  1. SAVEPOINT

This is used to create reference points between a group of many transactions. This makes it easier to perform rollbacks and other checks. 

Data Query Language (DQL) 

The SELECT statement is a DQL statement in SQL. Using SELECT, we can fetch data from one or multiple tables; it can also be used to analyze data, build reports, and more. 

Data Query Language (DQL)
Data Query Language (DQL)

There are two ways one can write SELECT queries: 

  • Using JOIN keyword:  SELECT  T1.COLUMN1 AS C1, T1.COLUMN2 C2, T2.COLUMN3 AS C3 FROM  TABLE1    T1
  • Using comma between tables: SELECT  T1.COLUMN1 AS C1, T1.COLUMN2 AS C2, T2.COLUMN3 C3
    FROM  TABLE1 AS T1, TABLE2 AS T2
    WHERE  T1.C1 = T2.C1
    AND  T1.C2 = T2.C2;

Both these methods are correct, and you can pick whichever you feel more comfortable with. 

In Conclusion

We touched upon the vital SQL commands and concepts that you must know before moving to deeper ends. However, know that it only gets easier with practice, and as you might have already realized – SQL is not a complex language to master, but it is beneficial! Its uses can be seen in many fields and especially for full-stack development. 

If you’re interested in full-stack development and want to get hands-on learning and training – check out our Full Stack Development Certification Program. The course focuses on MERN Stack and Microservices and requires no coding experience. 

Check out the course page for more details! 

How to learn SQL quickly?

Learning SQL is all about practising it - especially since the syntax is very easy. So, the best way to go about it would be to work on some projects and get a hands-on understanding of whatever you are learning.

Is SQL beginner-friendly?

Yes! SQL is beginner-friendly. So much so that it does not even assume any programming or coding experience.

What makes SQL so powerful?

The primary reason behind SQL’s strength is that it is a widely used language to manage different large databases for organizations. Plus, it is easy to learn and use, making it a more suitable language for the fast-paced world.

 

Want to share this article?

Plan your Software Development Career Now!

Leave a comment

Your email address will not be published. Required fields are marked *

Leave a comment

Your email address will not be published. Required fields are marked *

×
Get Free career counselling from upGrad experts!
Book a session with an industry professional today!
No Thanks
Let's do it
Get Free career counselling from upGrad experts!
Book a Session with an industry professional today!
Let's do it
No Thanks