پرس و جو یا Query به عملی گفته می شود که اطلاعات خاصی را از یک جدول موجود در پایگاه داده استخراج می کند.
برای ایجاد پرس و جو از دستورات خاصی استفاده می شود که نمونه هایی از آن را بیان می کنیم:
- دستور select به مفهوم انتخاب می باشد که با قالب کلی زیر مورد استفاده قرار می گیرد

کد PHP:
SELECT DISTINCT columns AS columns
FROM table
WHERE rule
GROUP BY columns
HAVING rule
ORDER BY columns

دستور SELECT دارای چند عبارت اختیاری به شرح زیر است:
• FROM جدول یا جداولی را که از آنها داده بازیابی می شود را مشخص می کند. برای الحاق جداول بر اساس ضابطه خاصی می تواند همراه با عبارت JOIN بیاید.
• WHERE همراه با یک گزاره شرطی برای محدود کردن سطرهای برگردانده شده استفاده می شود.
• GROUP BY اغلب همراه با توابع تجمعی(AVE، SUM، MAX، MIN و COUNT) برای ترکیب یا گروه بندی سطرها یا حذف سطرهای تکراری در مجموعه نتیجه استفاده می شود.
• HAVING همراه با یک گزاره شرطی روی نتیجه GROUP BY کار می کند. توابع تجمعی می توانند در گزاره شرطی HAVING هم استفاده شوند.
• ORDER BY برای تعیین ستون های که بر اساس آنها داده نتیجه مرتب می شود (صعودی و نزولی) .
FROM
در ساده ترین دستور SELECT کلیه سطرهای یک جدول که بعد از عبارت FROM ذکر شده است را بازیابی می کند. لیستی از فیلدهای موردنظر در مقابل عبارت SELECT قرار می گیرد. نام فیلدها با کاما (,) از هم جدا می شوند.
علامت ستاره (*) برای بیان کلیه فیلدهای یک جدول (یا چند جدول) می تواند استفاده شود.

مثال. اسامی کلیه شعبه ها در loan را پیدا کن
کد PHP:
SELECT branch_name
FROM loan

-------------------------------------------------------------------------------------------------------------------------------------------------------
INSERT
دستور INSERT اجازه اضافه کردن رکوردی به یک جدول را می دهد. فرم کلی آن به صورت زیر است:
INSERT INTO table_name
(column_list)
کد PHP:
VALUES (value_list); 
Column_list لیست فیلدهائی است که مقادیر به آنها نسبت داده خواهد شد و اگر برای همه فیلدها مقداری درنظرگرفته شود می تواند حذف شود. value_list مجموعه ای از مقادیر است که برای هر فیلد در لیست column_list یا فیلدهای جدول که در دستور CREATE TABLE تعریف شده اند مقداری دارد.
تعداد ستون ها و مقادیر آنها باید یکسان باشد. اگر فیلدی ذکر نشود مقدار پیش فرض آن درنظر گرفته می شود.
به فیلدهائی که در دستور CREATE TABLE به عنوان PRIMARY KEY یا با محدودیت NOT NULL تعریف شده اند باید مقداری نسبت داده شود.

مثال. حساب جدیدی را با شماره A-9732 و با موجودی 1200 در شعبه Perryridge اضافه کن.
کد PHP:
INSERT INTO account
VALUES 
('A-9732''Perryridge',1200); 
یا
کد PHP:
INSERT INTO account
(branch_namebalanceaccount_number)
VALUES ('A-9732''Perryridge',1200); 
-----------------------------------------------------------------------------------------------------------------------------------------------------
DELETE
فرمان DELETE اجازه حذف سطرهائی از یک جدول را می دهد. فرم کلی دستور به شکل زیر است:
کد PHP:
DELETE FROM table_name WHERE condition
کلیه رکوردهائی که شرط WHERE در آنها برقرار است از جدول حذف می شوند. اگر شرطی بیان نشود کلیه رکوردهای جدول حذف خواهند شد.
دستور DELETE هیچ رکوردی را به عنوان خروجی بر نمی گرداند.
مثال. کلیه رکوردهای وام گیرندگان را حذف کن.
DELETE FROM borrower;
مثال. کلیه رکوردهایی که حسابی در شعبه Perryridge دارند را حذف کن.
کد PHP:
DELETE FROM account
WHERE branch_name 
'Perryridge'
-------------------------------------------------------------------------------------------------------------------------------------------------------
UPDATE
دستور UPDATE اجازه تغییر داده های درون یک جدول را می دهد. این دستور هیچ رکوردی را اضافه یا حذف نمی کند. شکل کلی آن به صورت زیر است:
کد PHP:
UPDATE table_name
SET column_name 
valuecolumn_name=value, ...
WHERE condition
در کلیه رکوردهائی که شرط در آنها برقرار بوده است مقدار فیلدی که نامش در عبارت SET تعیین برابر با مقدار جدید می شود. دستور UPADTE ممکن است روی یک یا چند رکورد در یک جدول تاثیر بگذارد.

مثال. حساب هائی که موجودی آنها بیشتر از 10000 است را به میزان 6% افزایش بده.
کد PHP:
UPDATE account
SET balance 
balance 1.06
WHERE balance 
10000