id,`name`,local_id, local_name,group_code,project_id, obj_type,class_code,grouping, infos,virtual_codes,create_app, update_app,creator,creation_time, modifier,modified_time,valid, ts AND dto.project_id=#{param.projectId} #{objType} dto.class_code LIKE CONCAT(#{classCode},'%') AND dto.local_name LIKE CONCAT('%',#{param.keyword},'%') #{valid} AND dto.valid = TRUE AND dto.creation_time>=#{param.createTimeScope.startEq} AND dto.creation_time<=#{param.createTimeScope.endEq} ( ) #{relCode} GROUP BY dto.id SELECT DISTINCT dto.*,JSON_ARRAYAGG(dtr.obj_from) AS objFromIds,JSON_ARRAYAGG(dtr.obj_to) AS objToIds FROM dt_relation AS dtr LEFT JOIN dt_object AS dto ON (dtr.obj_from=dto.id OR dtr.obj_to=dto.id) WHERE 1=1 UNION ( #{relCode} AND dtr.obj_from IN( SELECT DISTINCT dto.id FROM dt_relation AS dtr LEFT JOIN dt_object AS dto ON (dtr.obj_from=dto.id OR dtr.obj_to=dto.id) WHERE 1=1 AND dto.obj_type='equipment' ) GROUP BY dto.id) limit #{param.skip},#{param.size}