我在我的數據庫中有兩個表格,這些表格用於顯示基於網格的信息表格。目前,我只有代碼顯示的信息爲一個表(代碼如下所示)在一個網格視圖中顯示兩個表中的信息
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'aux-room-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'room',
'capacity',
array(
'class'=>'CButtonColumn',
),
),
)); ?>
我,因爲我有能力我也想拿到佔用的基礎上,有多少行被關聯到一個房間號碼這在我的第二張桌子上。我知道,如果不使用PHP,這看起來可能相當簡單,但我對Yii很陌生,不明白我如何才能對另一個模型進行計數。要找到佔用情況,我需要使用表1中第一列的房間#
簡而言之:我需要count()與第一列中房間號相關聯的行。我需要顯示房間和容量的原始表格內容,但需要在這兩列之間佔用。我如何使用Yii來做到這一點?
SQL兩個表:
CREATE TABLE IF NOT EXISTS `cs_people`.`aux_room` (
`room` VARCHAR(20) NOT NULL ,
`capacity` VARCHAR(20) NULL ,
PRIMARY KEY (`room`))
ENGINE = InnoDB;
CREATE TABLE IF NOT EXISTS `cs_people`.`room_desk` (
`userid` VARCHAR(8) NOT NULL ,
`room` VARCHAR(20) NULL ,
`desk` VARCHAR(250) NULL ,
PRIMARY KEY (`userid`) ,
INDEX `room_desk.room_idx` (`room` ASC) ,
CONSTRAINT `room_desk.userid`
FOREIGN KEY (`userid`)
REFERENCES `cs_people`.`people` (`userid`)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `room_desk.room`
FOREIGN KEY (`room`)
REFERENCES `cs_people`.`aux_room` (`room`)
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
您是否閱讀過http://www.yiiframework.com/doc/guide/1.1/en/database.arr#statistical-query? – soju 2013-03-25 19:55:42