Eng katta qiymatni tanlash
Kirish: Ushbu qo'llanmada siz PostgreSQL GREATEST() funksiyasi yordamida berilgan ifodalar yoki qiymatlar ro'yxatidan eng kattasini tanlab olishni o'rganasiz.
GREATEST() funksiyasi bir nechta qiymatlar ro'yxatini qabul qiladi va ular orasidan eng kattasini qaytaradi.
Funksiyaning sintaksisi:
GREATEST (expression1, expression2, ...)
GREATEST() funksiyasi NULL qiymatlarni e'tiborsiz qoldiradi (inkor qiladi). Faqat barcha argumentlar NULL bo'lsagina NULL qaytaradi.Raqamlar orasidan eng kattasini topish:
SELECT GREATEST(1, 2, 3) AS highest;
-- 3
Alifbo tartibi bo'yicha eng oxirgi matnni topish:
SELECT GREATEST('A', 'B', 'C') AS largest;
-- C
Mantiqiy qiymatlarni solishtirish (true qiymati false dan katta deb hisoblanadi):
SELECT GREATEST(true, false) AS largest;
-- true (t)
Sanalardan eng so'nggisini (kechki sana) topish:
SELECT GREATEST('2025-01-01', '2025-02-01', '2025-03-01', NULL) AS latest;
-- 2025-03-01
E'tibor bering, NULL qiymati natijaga xalaqit bermadi va inkor qilindi.
Yetkazib berish (shipping) narxini hisoblash talab qilinsin:
Ushbu shartni bajarish va kamida $10 kafolatlangan narxni o'rnatish uchun GREATEST() funksiyasidan foydalanamiz:
SELECT
product_name,
gross_weight,
GREATEST(gross_weight * 5, 10) AS shipping_cost
FROM
products
ORDER BY
product_name;
Natija:
product_name | gross_weight | shipping_cost
----------------------------+--------------+---------------
Apple AirPods Pro 3 | 0.01 | 10
Apple iMac 24" | 9.92 | 49.60
Apple iPad Pro 12.9 | 1.42 | 10
Apple iPhone 15 | 0.38 | 10
Apple iPhone 15 Pro Max | 0.49 | 10
Apple Watch Series 9 | 0.09 | 10
Bose SoundLink Max | 6.61 | 33.05
Dell Inspiron 27 | 17.64 | 88.20
Agar vazn bo'yicha hisoblangan narx $10 dan kam bo'lsa, GREATEST(narx, 10) avtomatik tarzda 10 ni tanlaydi.
GREATEST() funksiyasidan foydalaning.GREATEST() funksiyasi ro'yxatdagi NULL qiymatlarni inobatga olmaydi.GREATEST(hisob, minimal_chegara) usulidan foydalanish juda qulaydir.