日期:2014-05-17  浏览次数:20851 次

对象集合查询
我有一个对象集合

[{ department: "市场部", name: "小王"},
{ department: "市场部", name: "小丁"},
{ department: "销售部", name: "小李"},
{ department: "销售部", name: "小明"},
{ department: "售后部", name: "小熊"}]

我有一张表:表a
Id Department Name
1  市场部         小王
2  市场部         小军
3  市场部         小丁
4  销售部         小明
5  销售部         小钱
6  售后部         小孙
7  售后部         小熊

我想得到的结果是
Id Department Name
1  市场部         小王
3  市场部         小丁
4  销售部         小明
7  售后部         小熊

我需要遍历对象执行多次,再合并结果

select * from 表a where Deparment = "对象1.department" and Name = "对象1.name"
select * from 表a where Deparment = "对象2.department" and Name = "对象2.name"
...

这显然很麻烦,有没有更直接的方法呢?

------解决方案--------------------
[{ department: "市场部", name: "小王"}, 
{ department: "市场部", name: "小丁"}, 
{ department: "销售部", name: "小李"}, 
{ department: "销售部", name: "小明"}, 
{ department: "售后部", name: "小熊"}] 
按你的意思,可以把这个数组理解成一个对象数组,也就是理解成一个表,称为对象表
那么

select A.*
from ta A
inner join 对象表 B on A.Department=B.Department and A.name=B.name



------解决方案--------------------
引用:
[{ department: "市场部", name: "小王"},