شرط WHERE می تواند با عملگرهای AND، OR و NOT ترکیب شود.
اپراتورهای AND و OR برای فیلتر کردن رکوردها بر اساس بیش از یک شرایط استفاده می شوند:
- در اپراتور AND اگر همه شرط ها با AND جدا شده باشند و TRUE باشد رکورد مورد مورد نظر را نمایش میدهد.
- در اپراتور OR اگر هر یک از شرط ها جدا شده باشد و TRUE باشد رکورد مورد مورد نظر را نمایش میدهد.
در اپراتور NOT اگر شرط و یا شرط ها درست نباشد رکورد مورد مورد نظر را نمایش میدهد.
استفاده از AND
SELECT column1, column2, ... FROM table_name WHERE condition1 AND condition2 AND condition3 ...;
استفاده از OR
SELECT column1, column2, ... FROM table_name WHERE condition1 OR condition2 OR condition3 ...;
استفاده از NOT
SELECT column1, column2, ... FROM table_name WHERE NOT condition;
جدول نمایشی
در زیر یک انتخاب از جدول " Customers" در پایگاه دادهNorthwind است:
CustomerID
CustomerName
ContactName
Address
City
PostalCode
Country
1
Alfreds Futterkiste
Maria Anders
Obere Str. 57
Berlin
12209
Germany
2
Ana Trujillo Emparedados y helados
Ana Trujillo
Avda. de la Constitución 2222
México D.F.
05021
Mexico
3
Antonio Moreno Taquería
Antonio Moreno
Mataderos 2312
México D.F.
05023
Mexico
4
Around the Horn
Thomas Hardy
120 Hanover Sq.
London
WA1 1DP
UK
5
Berglunds snabbköp
Christina Berglund
Berguvsvägen 8
Luleå
S-958 22
Sweden
مثالی برای AND
دستور SQL زیر همه فیلدها را از " Customers " که در آن کشور " Germany " است و شهر " Berlin " است انتخاب می کند:
SELECT * FROM Customers WHERE
Country='Germany' AND City='Berlin';
1 رکورد انتخاب شد
CustomerID
CustomerName
ContactName
Address
City
PostalCode
Country
1
Alfreds Futterkiste
Maria Anders
Obere Str. 57
Berlin
12209
Germany
مثالی برای OR
دستور SQL زیر همه فیلدها را از " Customers " که در آن شهر " Berlin" است یا شهر " München" است انتخاب می کند:
SELECT * FROM Customers WHERE
City='Berlin' OR City='München';
2 رکورد انتخاب شد
CustomerID
CustomerName
ContactName
Address
City
PostalCode
Country
1
Alfreds Futterkiste
Maria Anders
Obere Str. 57
Berlin
12209
Germany
25
Frankenversand
Peter Franken
Berliner Platz 43
München
80805
Germany
مثالی برای NOT
دستور SQL زیر همه فیلدها را از " Customers " انتخاب می کند که در آن کشور " Germany " نباشد.
SELECT * FROM Customers
WHERE NOT Country='Germany';
80 رکورد انتخاب شد.
ترکیبی از AND، OR و NOT
شما همچنین می توانید عملگرهای AND، OR یا NOT را ترکیب کنید.
دستور SQL زیر تمام فیلدهای " Customers " را انتخاب می کند که در آن کشور " Germany " است و شهر باید "'Berlin'" یا "'München'" باشد (با استفاده از پرانتز برای ایجاد عبارات پیچیده(
مثال
SELECT * FROM Customers WHERE
Country='Germany' AND (City='Berlin' OR City='München');
2 رکورد انتخاب شد
CustomerID
CustomerName
ContactName
Address
City
PostalCode
Country
1
Alfreds Futterkiste
Maria Anders
Obere Str. 57
Berlin
12209
Germany
25
Frankenversand
Peter Franken
Berliner Platz 43
München
80805
Germany
دستور SQL زیر همه فیلدها را از " Customers " انتخاب می کند که در آن کشور " Germany " و " USA " نباشد.
SELECT * FROM Customers
WHERE NOT Country='Germany' AND NOT Country='USA';
67 رکورد انتخاب شد .
نظر شما
>