Yii createComand()稍复杂写法

10 篇文章 0 订阅
$result=Yii::app()->db->createCommand()
		->select('product.product_name,image.image_path,price.selling_price,(SELECT special.special FROM clz_product_special special WHERE special.product_id=product.id AND special.start_date<=NOW() AND special.end_date>=NOW() ) special')
		->from('{{product}} product')
		->leftJoin('{{product_price}} price', 'product.id=price.product_id')
		->leftJoin('{{product_image}} image', 'product.`id`=image.product_id')
		->where(array('and','price.current=1',array('in','product.id',"SELECT product_id FROM {{active_category_product}} WHERE active_category_id=1")))
		->queryAll();

上面

array('in','product.id',"SELECT product_id FROM {{active_category_product}} WHERE active_category_id=1")//这段代码不能用子查询,Yii解释出来是字符串,不能变成查询条件

SQL语句:

SELECT product.product_name,image.image_path,price.selling_price,
(SELECT special.special FROM clz_product_special special WHERE special.product_id=product.id AND special.start_date<=NOW() AND special.end_date>=NOW() ) special
FROM clz_product product
LEFT JOIN clz_product_price price ON product.id=price.product_id
LEFT JOIN clz_product_image image ON product.id=image.product_id
WHERE (price.current=1) AND (`product`.`id` IN (SELECT product_id FROM
clz_active_category_product WHERE active_category_id=1))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值