Cdbcommand Failed To Execute The Sql Statement: Sqlstate[42S22]: Column Not Found: 1054 Unknown Column

I have a media table/model that contains information about various media items, and a mediatags table that contains multiple tags per media item. I have defined a HAS_MANY relationship for media->tags and a BELONGS_TO relationship for mediatags->media, however when I try to run a Media::model()->with("tags")->find() query using a column in the mediatags table in the where clause, I get the following error (you can see that activerecord is not doing the join):

CDbCommand failed to execute the SQL statement: SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘tag’ in ‘where clause’. The SQL statement executed was: SELECT t.mediaId AS t0_c0, t.name AS t0_c1, t.thumbUrl AS t0_c2, t.fullUrl AS t0_c3, t.urlName AS t0_c4, t.dateadded AS t0_c5, t.type AS t0_c6, t.fileName AS t0_c7, t.parentTable AS t0_c8, t.parentId AS t0_c9, t.origUrl AS t0_c10, t.origwidth AS t0_c11, t.origheight AS t0_c12, t.fullwidth AS t0_c13, t.fullheight AS t0_c14, t.thumbwidth AS t0_c15, t.thumbheight AS t0_c16, t.contentLabel AS t0_c17, t.longDesc AS t0_c18, t.status AS t0_c19, t.featured AS t0_c20 FROM media t WHERE (tag = :tag AND type = ‘P’) ORDER BY dateadded DESC LIMIT 16

media table create script:

CREATE TABLE media (

`mediaId` INT(11) NOT NULL AUTO_INCREMENT,


`name` VARCHAR(255) NULL DEFAULT NULL,


`thumbUrl` VARCHAR(255) NULL DEFAULT NULL,


`fullUrl` VARCHAR(255) NULL DEFAULT NULL,


`urlName` VARCHAR(255) NULL DEFAULT NULL,


`dateadded` DATETIME NULL DEFAULT NULL,


`type` CHAR(1) NULL DEFAULT NULL,


`fileName` VARCHAR(255) NULL DEFAULT NULL,


`parentTable` VARCHAR(255) NULL DEFAULT NULL,


`parentId` INT(11) NULL DEFAULT NULL,


`origUrl` VARCHAR(255) NULL DEFAULT NULL,


`origwidth` INT(11) NULL DEFAULT NULL,


`origheight` INT(11) NULL DEFAULT NULL,


`fullwidth` INT(11) NULL DEFAULT NULL,


`fullheight` INT(11) NULL DEFAULT NULL,


`thumbwidth` INT(11) NULL DEFAULT NULL,


`thumbheight` INT(11) NULL DEFAULT NULL,


`contentLabel` VARCHAR(255) NULL DEFAULT NULL,


`longDesc` TEXT NULL,


`status` VARCHAR(1) NULL DEFAULT NULL,


`featured` BIT(1) NULL DEFAULT NULL,


PRIMARY KEY (`mediaId`)

)

mediatags create script:

CREATE TABLE mediatags (

`mediatagId` INT(11) NOT NULL AUTO_INCREMENT,


`mediaId` INT(11) NOT NULL,


`tag` VARCHAR(255) NOT NULL,


`parentTableName` VARCHAR(255) NULL DEFAULT NULL,


`parentTableId` VARCHAR(255) NULL DEFAULT NULL,


PRIMARY KEY (`mediatagId`)

)

Media model relationships method:

public function relations()

{


	// NOTE: you may need to adjust the relation name and the related


	// class name for the relations automatically generated below.


    return array(


        'tags'=>array(self::HAS_MANY, 'Mediatag', 'mediaId'),


    );


}

Mediatag model relationship method:

public function relations()

{


	// NOTE: you may need to adjust the relation name and the related


	// class name for the relations automatically generated below.


    return array(


        'media'=>array(self::BELONGS_TO, 'Media', 'mediaId'),


    );


}

attempted query:

$photos = Media::model()->with(“tags”)->find(array(“condition” => “tag = :tag AND type = ‘P’”, “order” => “dateadded DESC”, “params”=>array(’:tag’=> $tag),

            "limit" => (int) $pageSize,


            "offset" => (int) $offset


        ));

I have narrowed this down to the "limit" in my findAll query (my attempted query is a findAll not a find) - it appears that the SQL being executed properly joins the mediatags table when I leave off the limit, but if I have the limit in there, the SQL being executed does not have the join in it.