从表插入, 主表为简单字段

This commit is contained in:
mcy
2018-11-01 11:33:12 +08:00
parent b2b44555ca
commit c9ad18894d
3 changed files with 9 additions and 7 deletions
@@ -25,7 +25,7 @@ public class RoleSyncJoinSubTest {
}
/**
* 子查询从表插入 (确保主表记录必须有数据)
* 子查询从表插入 (确保主表记录必须有数据)
*/
@Test
public void insertTest01() {
@@ -34,19 +34,20 @@ public class RoleSyncJoinSubTest {
dml.setTs(new Date().getTime());
dml.setType("INSERT");
dml.setDatabase("mytest");
dml.setTable("role");
dml.setTable("label");
List<Map<String, Object>> dataList = new ArrayList<>();
Map<String, Object> data = new LinkedHashMap<>();
dataList.add(data);
data.put("id", 1L);
data.put("role_name", "admin2");
data.put("user_id",1L);
data.put("label", "a");
dml.setData(dataList);
esAdapter.getEsSyncService().sync(dml);
GetResponse response = esAdapter.getTransportClient().prepareGet("mytest_user", "_doc", "1").get();
Assert.assertEquals("admin2", response.getSource().get("_role_name"));
Assert.assertEquals("a;b", response.getSource().get("_labels"));
}
@After
@@ -5,6 +5,7 @@ esMapping:
_type: _doc
_id: _id
sql: "select a.id as _id, concat(a.name,'_') as _name, a.role_id as _role_id,
b.role_name as _role_name, a.c_time as _c_time from user a
left join (select id, role_name from role ) b on b.id=a.role_id"
b.labels _labels, a.c_time as _c_time from user a
left join (select user_id, group_concat(label separator ';') as labels from label
group by user_id) b on b.user_id=a.id"
commitBatch: 3000
@@ -4,5 +4,5 @@ esMapping:
_index: mytest_user
_type: _doc
_id: _id
sql: "select a.id as _id, a.names as _name, a.role_id as _role_id, a.c_time as _c_time from user a"
sql: "select a.id as _id, a.name as _name, a.role_id as _role_id, a.c_time as _c_time from user a"
commitBatch: 3000