我有两个表,foo和bar,它们都具有相同的架构和行类型
Table1
name varchar
id int
age int
Foo 包含 300 条记录,Bar 包含 100 条记录。是否有一个选择语句可以让我将 Foo 中的每一行与栏中的每一行进行比较,以确定 foo.age 是否> bar.age?因此,如果它是 java 中的 for 循环,它看起来像这样:
for(int i = 0; i < Foo.length; i++){
for(int j = 0; j < Bar.length; j++){
//Select here if foo[i].age > bar[j].age
}
}
编辑后续问题:
如果我有一个名为"foobar"的临时表,其架构与"表 1"中的架构相同,如何将仅属于 foo 一部分的行插入到临时表中。例如在 java 中:
List list = new LinkedList<Table1>
for(int i = 0; i < Foo.length; i++){
for(int j = 0; j < Bar.length; j++){
if(foo[i].age > bar[j].age){
list.add(foo[i]);
}
}
}
select *
from foo
cross join bar
where foo.age > bar.age
select * from foo cross join bar where foo.age > bar.age
会这样做,但我想知道你为什么要将一个条目与其他表中的每个条目进行比较。