MySQL ANY


ULASHISH

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!