MySQL ANY
MySQL HAMMA operatori
ANY operatori qiymatni pastki so‘rov tomonidan qaytarilgan har bir qiymat bilan solishtirish uchun ishlatiladi.
Agar quyi so‘rov natijalari to‘plamidagi kamida bitta qiymat shartga javob bersa, ANY operatori TRUE deb baholaydi.
HAR QANDAY sintaksis
SELECT column_name(s)
FROM table_name
WHERE
column_name operator ANY (subquery);Eslatma: Operator standart taqqoslash operatori bo‘lishi kerak (=, <>, !=, >, >=, < yoki <=).
Demo ma’lumotlar bazasi
Quyida Northwind namunaviy ma’lumotlar bazasidagi “Mahsulotlar” jadvalidan tanlab olingan:
| ProductID | ProductName | Price |
|---|---|---|
| 1 | Chais | 18.00 |
| 2 | Chang | 19.00 |
| 3 | Aniseed Syrup | 10.00 |
| 4 | Chef Anton's Cajun Seasoning | 22.00 |
Va "OrderDetails" jadvalidan tanlov:
| OrderDetailID | ProductID | Quantity |
|---|---|---|
| 1 | 11 | 12 |
| 2 | 42 | 10 |
| 3 | 72 | 5 |
| 4 | 14 | 9 |
MySQL HAR QANDAY misollar
Quyidagi SQL, agar "OrderDetails" jadvalida Quantity 10 ga teng bo‘lgan HAR QANDAY yozuv topilsa, ProductName’ni qaytaradi (bu TRUE qaytaradi, chunki Quantity ustunida 10 ga teng qiymatlar bor):
Misol
SELECT ProductName FROM Products
WHERE ProductID = ANY (
SELECT ProductID
FROM OrderDetails
WHERE Quantity = 10
);
O‘zingiz sinab ko‘ring »
Quyidagi SQL, agar "OrderDetails" jadvalida Quantity 99 dan katta bo‘lgan HAR QANDAY yozuv topilsa, ProductName’ni qaytaradi (bu TRUE qaytaradi, chunki Quantity ustunida 99 dan katta qiymatlar bor):
Misol
SELECT ProductName FROM Products
WHERE ProductID = ANY (
SELECT ProductID
FROM OrderDetails
WHERE Quantity > 99
);
O‘zingiz sinab ko‘ring »
Quyidagi SQL, agar "OrderDetails" jadvalida Quantity qiymati 1000 dan katta bo‘lgan BIRORTA (ANY) yozuv topilsa, ProductName’ni qaytaradi (bu FALSE qaytaradi, chunki Quantity ustunida 1000 dan katta qiymat yo‘q):
Misol
SELECT ProductName FROM Products
WHERE ProductID = ANY (
SELECT ProductID
FROM OrderDetails
WHERE Quantity > 1000
);
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
