DDL ( Ma'lumotlarni aniqlash tili) - ma'lumotlarni aniqlash tili . DDL so'rovlarining vazifasi ma'lumotlar bazasini yaratish va uning tuzilishini tavsiflashdan iborat. Ushbu turdagi so'rovlar ma'lumotlar bazasiga turli xil ma'lumotlarni joylashtirish qoidalarini belgilaydi.
DML (Data Manipulation Language) - ma'lumotlarni manipulyatsiya qilish tili. Ushbu turdagi so'rovlar ma'lumotlar bilan ba'zi manipulyatsiyalarni bevosita bajaradigan turli xil buyruqlarni o'z ichiga oladi. DML so'rovlari allaqachon kiritilgan ma'lumotlarga o'zgartirishlar kiritish, ma'lumotlar bazasidan ma'lumotlarni olish, ularni saqlash, turli yozuvlarni yangilash va ma'lumotlar bazasidan o'chirish uchun kerak. DML chaqiruv elementlari SQL bayonotlarining asosiy qismini o'z ichiga oladi.
DCL (Data Control Language) - ma'lumotlarni boshqarish tili. Ruxsatlar, huquqlar va boshqa DBMS sozlamalari bo'yicha so'rovlar va buyruqlarni o'z ichiga oladi.
TCL (Transaction Control Language) - tranzaktsiyalarni boshqarish tili. Ushbu turdagi konstruktsiyalar DML so'rovlari yordamida amalga oshiriladigan o'zgarishlarni boshqarish uchun ishlatiladi. TCL konstruktsiyalari DML so'rovlarini tranzaktsiyalar to'plamiga birlashtirishga imkon beradi.
Turlari bo'yicha SQL so'rovlarining asosiy turlari:
::=
{ { HASH | ORDER } GROUP
| { CONCAT | HASH | MERGE } UNION
| { LOOP | MERGE | HASH } JOIN
| EXPAND VIEWS
| FAST | FORCE ORDER
| { FORCE | DISABLE } EXTERNALPUSHDOWN
| { FORCE | DISABLE } SCALEOUTEXECUTION
| IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
| KEEP PLAN
| KEEPFIXED PLAN
| MAX_GRANT_PERCENT = | MIN_GRANT_PERCENT = | MAXDOP | MAXRECURSION | NO_PERFORMANCE_SPOOL
| OPTIMIZE FOR ( @variable_name { UNKNOWN | = } [ , ...n ] )
| OPTIMIZE FOR UNKNOWN
| PARAMETERIZATION { SIMPLE | FORCED }
| QUERYTRACEON | RECOMPILE
| ROBUST PLAN
| USE HINT ( [ , ...n ] )
| USE PLAN N''
| TABLE HINT ( [ , [ [, ]...n ] ] )
}
::=
{ NOEXPAND [ , INDEX ( [ ,...n ] ) | INDEX = ( ) ]
| INDEX ( [ ,...n ] ) | INDEX = ( )
| FORCESEEK [ ( ( [,... ] ) ) ]
| FORCESCAN
| HOLDLOCK
| NOLOCK
| NOWAIT
| PAGLOCK
| READCOMMITTED
| READCOMMITTEDLOCK
| READPAST
| READUNCOMMITTED
| REPEATABLEREAD
| ROWLOCK
| SERIALIZABLE
| SNAPSHOT
| SPATIAL_WINDOW_MAX_CELLS = | TABLOCK
| TABLOCKX
| UPDLOCK
| XLOCK
}