2012 yil bilan taqqoslab, WHERE bandi faqat belgilangan yilda qilingan
buyurtmalarni qaytaradi.
Quyida
DATE_PART() funksiyasidan foydalanadigan ushbu misolning
PostgreSQL versiyasi keltirilgan.
SELECT order_num FROM Orders WHERE DATE_PART(' year',
order_date) = 2012;
Oracle'da DATE PART()
funksiyasi ham mavjud emas, biroq xuddi
shunday qila oladigan boshqa bir qancha sana funksiyalari mavjud. Bir
misolni ko'rib chiqaylik.
SELECT
order__num
FROM
Orders
WHERE
to_number(to_char(order_date, 'YYYY’)) = 2012;
Ushbu misolda to_char() funksiyasi
sana komponentini chiqarish
uchun, to_number() funksiyasi esa olingan qiymatni 2012-yilgi qiymat
bilan solishtirish uchun raqamli qiymatga aylantirish uchun ishlatiladi.
Shunga o'xshash natijalarga BETWEEN operatori yordamida erishish
mumkin.
SELECT order_num FROM Orders WHERE order_date BETWEEN
to_date('01-01-2012’) AND to_date(’12-31-2012’);
MySQL
va MariaDB DATEPART() dan tashqari barcha sana
funksiyalariga ega. Ushbu ma'lumotlar
bazasi foydalanuvchilari YEAR()
funksiyasidan sanadan yil raqamini olishlari mumkin.
SELECT order_num FROM Orders WHERE YEAR(order_date) =
2012;
Turli MBBTlar odatda sanalar bilan ko'proq narsani qilishlari
mumkin. Ularning aksariyatida sanalarni
solishtirish va sana
arifmetikasini bajarish,
shuningdek, sanani formatlash imkoniyatlari va
boshqalar mavjud. Ammo, allaqachon ko'rsatilgandek,
sana va vaqt
funktsiyalari aniq ma'lumotlar bazasiga bog'liq.
Do'stlaringiz bilan baham: