mysql find_in_set
在项目中,使用mybatis做一对多关联,出现数据条数不匹配的情况,比如要查询10条,由于一对多的关系导致最终得到的数据条数变少。
SELECT detail.id id, detail.activity_name activityName, detail.main_title mainTitle, detail.main_title_spec mainTitleSpec, detail.sub_title subTitle, detail.desc_copy descCopy, detail.order_sn orderSn, detail.start_time startTime, detail.end_time endTime, detail.enable enable, detail.user_tag userTag, detail.pic_num picNum, detail.tag tag, detail.terminal_type terminalType, detail.pop_rate popRate, detail.status status, detail.create_name createName, detail.create_time createTime, detail.update_name updateName, detail.update_time updateTime, item.detail_id detailId, item.pc_image pcImage, item.pc_jump_url pcJumpUrl, item.background_color backgroundColor, item.mobile_image mobileImage, item.app_jump_url appJumpUrl, item.mp_jump_url mpJumpUrl FROM resource_config_detail detail LEFT JOIN resource_config_detail_item item ON detail.id = item.detail_id WHERE detail.id IN (IFNULL((SELECT temp.id FROM (SELECT config_detail.id FROM resource_config_detail config_detail where config_detail.status='1' ORDER BY config_detail.order_sn DESC,config_detail.end_time DESC limit #{page},#{rows}) AS temp),''))