《PHP教程:Yii中的relations數(shù)據(jù)關(guān)聯(lián)查詢(xún)及統(tǒng)計(jì)功能用法詳解》要點(diǎn):
本文介紹了PHP教程:Yii中的relations數(shù)據(jù)關(guān)聯(lián)查詢(xún)及統(tǒng)計(jì)功能用法詳解,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
相關(guān)主題:YII框架
本文實(shí)例講述了Yii中的relations數(shù)據(jù)關(guān)聯(lián)查詢(xún)及統(tǒng)計(jì)功能用法.分享給大家供大家參考,具體如下:PHP教程
關(guān)聯(lián)查詢(xún),Yii 也支持所謂的統(tǒng)計(jì)查詢(xún)(或聚合查詢(xún)). 它指的是檢索關(guān)聯(lián)對(duì)象的聚合信息,例如每個(gè) post 的評(píng)論的數(shù)量,每個(gè)產(chǎn)品的平均等級(jí)等. 統(tǒng)計(jì)查詢(xún)只被 HAS_MANY(例如,一個(gè) post 有很多評(píng)論) 或 MANY_MANY (例如,一個(gè) post 屬于很多分類(lèi)和一個(gè) category 有很多 post) 關(guān)聯(lián)對(duì)象執(zhí)行.PHP教程
執(zhí)行統(tǒng)計(jì)查詢(xún)非常類(lèi)似于之前描述的關(guān)聯(lián)查詢(xún).我們首先需要在 CActiveRecord 的 relations() 方法中聲明統(tǒng)計(jì)查詢(xún).PHP教程
class Post extends CActiveRecord { public function relations() { return array( 'commentCount'=>array(self::STAT, 'Comment', 'post_id'), 'categoryCount'=>array(self::STAT, 'Category', 'post_category(post_id,category_id)'), ); } }
關(guān)聯(lián)查詢(xún)命名空間PHP教程
關(guān)聯(lián)查詢(xún)也可以和 命名空間一起執(zhí)行.有兩種形式.第一種形式,命名空間被應(yīng)用到主模型.第二種形式,命名空間被應(yīng)用到關(guān)聯(lián)模型.PHP教程
下面的代碼展示了如何應(yīng)用命名空間到主模型.
PHP教程
下面的代碼展示了如何應(yīng)用命名空間到關(guān)聯(lián)模型.
PHP教程
命名空間也可以在 CActiveRecord::relations() 中聲明的關(guān)聯(lián)規(guī)則的 with 選項(xiàng)中指定.在下面的例子中, 若我們?cè)L問(wèn) $user->posts,它將返回此post 的所有審核后的評(píng)論.PHP教程
class User extends CActiveRecord { public function relations() { return array( 'posts'=>array(self::HAS_MANY, 'Post', 'author_id', 'with'=>'comments:approved'), ); } }
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Yii框架入門(mén)及常用技巧總結(jié)》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《smarty模板入門(mén)基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》PHP教程
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助.PHP教程
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/5666.html