3. SQL Command Categories Overview

SQL commands are classified into five main categories based on their functionality:

CategoryAcronymDescription
DDLData Definition LanguageDefine/alter schema structure (tables, views, indexes)
DMLData Manipulation LanguageModify data (insert, update, delete)
DCLData Control LanguageManage user access (privileges)
TCLTransaction Control LanguageControl transaction flow (commit, rollback)
DQLData Query LanguageQuery and retrieve data

3.1 Data Definition Language (DDL)

DDL is used to define or modify schema-level structures.

CommandPurposeExample
CREATECreates tables/views/indexesCREATE TABLE students (id INT, name VARCHAR(50));
ALTERModifies table structureALTER TABLE students ADD COLUMN age INT;
DROPDeletes a table/view/index permanentlyDROP TABLE students;
TRUNCATERemoves all data from a tableTRUNCATE TABLE students;
RENAMERenames a table or columnALTER TABLE students RENAME TO learners;

3.2 Data Manipulation Language (DML)

DML is used for managing records within tables.

CommandPurposeExample
INSERTAdds new rowsINSERT INTO students (id, name) VALUES (1, 'John');
UPDATEModifies existing rowsUPDATE students SET name = 'John Doe' WHERE id = 1;
DELETERemoves rowsDELETE FROM students WHERE id = 1;
MERGECombines INSERT and UPDATEMERGE INTO target USING source ON condition WHEN MATCHED THEN UPDATE...

3.3 Data Control Language (DCL)

DCL controls access and privileges for users.

CommandPurposeExample
GRANTAssigns privilegesGRANT SELECT ON students TO user1;
REVOKERemoves privilegesREVOKE SELECT ON students FROM user1;

3.4 Transaction Control Language (TCL)

TCL manages the lifecycle of transactions.

CommandPurposeExample
COMMITSaves changesCOMMIT;
ROLLBACKReverts changesROLLBACK;
SAVEPOINTSets rollback pointsSAVEPOINT save1;
SET TRANSACTIONSets isolation levelSET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

3.5 Data Query Language (DQL)

DQL focuses on querying and fetching data.

CommandPurposeExample
SELECTRetrieve recordsSELECT name FROM students WHERE age > 20;

4. CRUD Operations (SQL + Spark SQL)

CRUD stands for Create, Read, Update, Delete, the core operations of data handling.

OperationSQL ExampleSpark SQL Example
CreateINSERT INTO users VALUES (1, 'Alice');INSERT INTO employees VALUES (1, 'Alice', 30, 'Engg');
ReadSELECT * FROM users;SELECT name, department FROM employees;
UpdateUPDATE users SET name='Bob' WHERE id=1;(Delta Only) UPDATE employees SET age=31 WHERE id=1;
DeleteDELETE FROM users WHERE id=1;(Delta Only) DELETE FROM employees WHERE age<25;

4.1 Creating Databases and Tables

MySQL/PostgreSQL

CREATE DATABASE my_db;
CREATE TABLE customers (
  id INT PRIMARY KEY,
  name VARCHAR(100),
  email VARCHAR(100) UNIQUE
);

Spark SQL

CREATE TABLE students (
  id INT, name STRING, age INT
);

4.2 Inserting Data

  • Single Record: INSERT INTO users (name) VALUES ('Alice');
  • Multiple Records: INSERT INTO users (name) VALUES ('A'), ('B');
  • From Another Table: INSERT INTO new_users SELECT * FROM old_users;

4.3 Reading Data

SELECT * FROM users;
SELECT name FROM users WHERE age > 18;
SELECT COUNT(*) FROM users;

4.4 Updating and Deleting Data (SQL & Delta Lake)

UPDATE employees SET age = 35 WHERE id = 5;
DELETE FROM employees WHERE department = 'HR';

4.5 MERGE / UPSERT (Delta Lake)

MERGE INTO employees AS e
USING updates AS u
ON e.id = u.id
WHEN MATCHED THEN UPDATE SET age = u.age
WHEN NOT MATCHED THEN INSERT (id, name, age) VALUES (u.id, u.name, u.age);

4.6 Additional Spark SQL Features

FeatureCommandExample
View CreationCREATE VIEW v1 AS SELECT * FROM t1;
CachingCACHE TABLE my_table;
Broadcast JoinSELECT /*+ BROADCAST(dim) */ * FROM fact JOIN dim;
Schema EvolutionALTER TABLE CHANGE COLUMN col_name NEW_TYPE;

5. Summary Table of SQL Categories

CategoryCommandsMain Purpose
DDLCREATE, ALTER, DROP, TRUNCATEDefine/modify schema
DMLINSERT, UPDATE, DELETEManipulate data rows
DCLGRANT, REVOKEControl user access
TCLCOMMIT, ROLLBACK, SAVEPOINTManage transactions
DQLSELECTQuery data

6. Final Notes

  • Use EXPLAIN or EXPLAIN ANALYZE to check query execution plans.
  • Leverage Delta Lake for full CRUD support with

Discover more from HintsToday

Subscribe to get the latest posts sent to your email.

Posted in

Leave a Reply

Discover more from HintsToday

Subscribe now to keep reading and get access to the full archive.

Continue reading