为大家分享一个之前遇到的sql执行问题,报错语法问题:
环境 ob v4.2 租户: ob mysql
sql 查询报错:
select t.rule_code,t.rule_name,t.rule_detail from t_ant_person_case_rule t
where
t.regist_no = ‘070201030120’
and t.valid_ind = ‘1’
and t.rule_ind = ‘3’
order by rule_code asc
UNION
select t.rule_code,t.rule_name,t.rule_detail from t_ant_vehicle_case_rule t
where
t.regist_no = ‘070201030120’
and t.valid_ind = ‘1’
and t.rule_ind = ‘3’
order by rule_code asc
UNION
select t.rule_code,t.rule_name,t.rule_detail from t_ant_repairfactory_case_rule t
where
t.regist_no = ‘070201030120’
and t.valid_ind = ‘1’
and t.rule_ind = ‘3’
order by rule_code asc
经分析,和union 前的order by 有关,
v4 版本再支持这种写法,在sql 最后一行保留一个order不用即可,供大家学习