Atitit 資料join 的原理與java實現 Atitit join表連線的原理與實現 13、SQL Server 表連線的三種方式 (1) Merge Join (2) Nested
Atitit 資料join 的原理與java實現
Atitit join表連線的原理與實現
13、SQL Server 表連線的三種方式
(1) Merge Join
(2) Nested Loop Join
(3) Hash Join
Relst
[
{
"name":"at",
"age":11,
"addr":"addr1"
},
{
"name":"name22",
"age":22,
"addr":"addr22222"
}
]
/springbootUpload/src/springbootUploadPkg/joinDemo.java
package springbootUploadPkg;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
@SuppressWarnings
public class joinDemo {
public static void main(String[] args) {
Double a = null; Double b = null;
// Double c=a*b;
List<Map> table1 = new ArrayList() {
{
this.add(new LinkedHashMap<String, Object>() {
{
this.put("name", "at");
this.put("age", 11);
}
});
this.add(new LinkedHashMap<String, Object>() {
{
this.put("name", "name22");
this.put("age", 22);
}
});
}
};
@SuppressWarnings("unchecked")
List<Map> table2 = new ArrayList() {
{
this.add(new LinkedHashMap<String, Object>() {
{
this.put("name", "at");
this.put("addr", "addr1");
}
});
this.add(new LinkedHashMap<String, Object>() {
{
this.put("name", "name22");
this.put("addr", "addr22222");
}
});
}
};
//使用且套迴圈連線join
for (Map row : table1) {
for (Map row2 : table2) {
if(row.get("name").equals(row2.get("name")))
row.putAll(row2);
}
}
System.out.println( JSON.toJSONString(table1, true) );
}
}