关于Createcommand的一点疑问

有一段SQL文




$sql = "SELECT  a.uname AS email, SUM(c.goodsprice*31*c.goodsnum) AS money, FROM_UNIXTIME(d.`addtime`,'%Y/%m') AS buytime

                FROM dg_users a, dg_big_order b, dg_order c, dg_sendorder d

                WHERE a.uname IN (:uname) AND b.old_new = 2

                  AND c.state <> '6'

                  AND d.state IN (2, 3)

                  AND a.uid = b.uid

                  AND b.ooid = c.ooid

                  AND c.ooid = d.ooid

                  GROUP BY email, buytime

                  ORDER BY buytime desc";



我使用如下代码




$names = "'a@abc.com','b@abc.com','c@abc.com'";

$command2 = Yii::app()->db->createCommand($sql);

$command2->bindValue(':uname',$names)

$command2->queryAll();



就查询不出来任何结果,而我使用只能使用自己的办法




$names = "'a@abc.com','b@abc.com','c@abc.com'";

$sql = str_replace(':uname',$names,$sql);

$command2 = Yii::app()->db->createCommand($sql);

$command2->queryAll();



才可以查询出我期望的结果。

如果达人们能授业解惑,不胜感谢。

把mysql的access log打开,对比一下