提出问题
在只有order by而没有where的条件下,会出现where order by t1.memo的情况
前提
List<TaskLogBatch> listTaskLogBatchPage(Page<TaskLogBatch> page, @Param("ew") QueryWrapper queryWrapper, @Param("en") boolean english);
解决
<select id="listTaskLogNeDetailPage" resultMap="listTaskLogNeDetailPageMap">
SELECT
t1.id,
t1.task_log_ne_id,
t1.ne_task_id,
t1.ne_cmd_id,
t1.task_status_id,
t1.start_time,
t1.end_time,
t1.memo,
<choose>
<when test="en">
t2.name_en as ne_cmd_name,
t3.name_en as task_status_name
</when>
<otherwise>
t2.name as ne_cmd_name,
t3.name as task_status_name
</otherwise>
</choose>
FROM
task_log_ne_detail AS t1
INNER JOIN ne_cmd_dic AS t2 ON t1.ne_cmd_id = t2.cmd_id
INNER JOIN task_status_dic AS t3 ON t1.task_status_id = t3.id
<where>
${ew.sqlSegment}
</where>
</select>
<select id="listTaskLogNeDetailPage" resultMap="listTaskLogNeDetailPageMap">
SELECT
t1.id,
t1.task_log_ne_id,
t1.ne_task_id,
t1.ne_cmd_id,
t1.task_status_id,
t1.start_time,
t1.end_time,
t1.memo,
<choose>
<when test="en">
t2.name_en as ne_cmd_name,
t3.name_en as task_status_name
</when>
<otherwise>
t2.name as ne_cmd_name,
t3.name as task_status_name
</otherwise>
</choose>
FROM
task_log_ne_detail AS t1
INNER JOIN ne_cmd_dic AS t2 ON t1.ne_cmd_id = t2.cmd_id
INNER JOIN task_status_dic AS t3 ON t1.task_status_id = t3.id
${ew.customSqlSegment}
</select>