above, I don"t know why the normal sentence was changed to the second field
.$temp = implode(",",$temp);
$field = "comment.*,u.username,moment.moment_content,reply_comment.comment_content as reply_content,";
$field .= "(select count(reply.id) from ncd_moment_comment as reply where comment.id=reply.reply_comment_id and reply.uid not in ({$temp}) ) as u_reply,";
$field .= "(select count(reply.id) from ncd_moment_comment as reply where comment.id=reply.reply_comment_id and reply.uid in ({$temp}) ) as bd_reply";
$list = $this
->alias("comment")
->field($field)
->join("user u","comment.uid=u.user_id","left")
->join("ncd_moment moment","comment.moment_id=moment.id","left")
->join("ncd_moment_comment reply_comment","comment.reply_comment_id=reply_comment.id","left")
->where($map)
->order("comment.comment_release_time desc")
->fetchSql()->select();
echo ""; var_dump($list);die;
sql statement
string(710) "SELECT `comment`.*,`u`.`username`,`moment`.`moment_content`,reply_comment.comment_content as reply_content,(select count(reply.id) from ncd_moment_comment as reply where comment.id=reply.reply_comment_id and reply.uid not in ("24","25","9917","9921") ) as u_reply,(select count(reply.id) from ncd_moment_comment as reply where comment.id=reply.reply_comment_id and reply.uid in ("24","9921") ) as bd_reply FROM `ncd_moment_comment` `comment` LEFT JOIN `user` `u` ON `comment`.`uid`=`u`.`user_id` LEFT JOIN `ncd_moment` `moment` ON `comment`.`moment_id`=`moment`.`id` LEFT JOIN `ncd_moment_comment` `reply_comment` ON `comment`.`reply_comment_id`=`reply_comment`.`id` ORDER BY comment.comment_release_time desc"
question