Mybatis联合查询记录,左链接参数操做

公司业务需求要作个列表的排序java

而实际排序的字段再也不本库中,须要跨库去拿到字段,由于是微服务体系架构,不可能Left join跨库的表,因此决定调用一次跨服务的API拿到排序相关的对象,里面包含须要排序的列sql

一块拿到sql中进行排序(由于order by比较方便。。。。)架构

而后开始出现了bug,我把跨服务拿到的对象存成List集合,须要在sql中左链接才能使用里面的字段,可是直接这样写就会出现bug:微服务

ScheduleDictionarygoogle

left joinspa

(select O.Id AS OrgId,O.`Code`,O.`Name` from #{param.orgModels} O)日志

AS Org on ScheduleDictionary.OrganizationId=Org.OrgIdcode

bug的日志打印大约是这样:server


google了一下,只有一个问题是跟这个相关的,因此决定记录一下把,
问了下领导,这样直接left join一个list集合是不行的,须要拆开:

拆开的办法是使用union join 例如:select 1 as id,tt as name union join select 2 as id ,dd as name .....最后拼成一张表,
而我传过去的是个List确定要用foreach循环

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near'_binary'??\0sr\0java.util.ArrayListx??↔??a?♥\0I\0sizexp\0\0\0w\0\0\0t\0

就这样就能够把它看成一张表去与主表链接了,对象

一样也能够拿到 主键或者code去下面进行排序操做了,

相关文章
相关标签/搜索