Yiida CDbCriteria klassini ishlatish
Bugun Yii frameworkdagi
CDbCriteria klassi haqida gaplashib o’tamiz, ushbu klass so’rovlardagi kriteriyalar yaratish uchun ishlatiladi. Klassdagi metodlarga tasnif berilib ketiladi.
// CDbCriteria klassidan nusxa olamiz
$criteria = new CDbCriteria;
// jadval aliasini ko'rsatamiz
$criteria->alias = 'user';
// WHEREgaa aloqador barcha amallar shu metodda ishlatidi
// pleysholderlar ishlatish mumkin
$criteria->condition = 'id = :userId AND date_create distinct = true;
// guruhlashtirmoqchi bo'lgan maydonni kirtamiz, GROUP BY
$criteria->group = 'date_update';
// HAVING qiymati
$criteria->having = 'MAX(salary) > 10000';
// natijada olinuvchi massiv indeksini ko'rsatamiz, foydali metod, 1.1.5 versiyasidan paydo bo'lgan
// boshlang'ich qiymari NULL bo'ladi va massiv indekslari 0dan boshlanadi
$criteria->index = 'full_name';
// boshqa jadvallar bilan join qilishni ko'rsayish
// hohlagan jadvalni join qilamiz
$criteria->join = 'LEFT JOIN `profile` ON `user`.`id` = `profile`.`user_id`';
// javob qaytishi mumkin bo'lgan natijalarning maksimum sonini ko'rsatish
// agar 0dan kam bo'lsa, hamma natijalarni qaytaradi
$criteria->limit = '20';
// aralashtirish uchun
$criteria->offset = '3';
// tartiblash
$criteria->order = 'date_create DESC, first_name ASC';
// pleysholder uchun parametrlar
$criteria->params = array(':userId'=>$userId);
// maydoni tanlash uchun, boshlang'ich qiymati *
$criteria->select = 'id, first_name, last_name, last_visit';
// yoki
$criteria->select = array('id', 'first_name', 'last_name', 'last_visit');
// agar true bo'lsa, tashqi(bog'langan) jadvallardagi ma'lumotlarni
// bitta JOIN so'rov bilan olib beradi. Faqat ActiveRecorddagi bog'lanishlar bilan ishlaydi
$criteria->together = true;
// bog'lanishlar, faqat ActiveRecord bilan ishlaydi.
$criteria->with = array('profile', 'comments', 'posts');
// Kriteriyalariz tayyor. Endi uni ishlatishimiz mumkin
$users = User::model()->findAll($criteria);
Savollar bo’lsa be’malol yozishingiz mumkin.
Manba:
Web Dasturlash
Yiida CDbCriteria klassini ishlatish