var query1 =
from rHead in mPlanDataTable.AsEnumerable()
from rTail in mTempDataTable.AsEnumerable()
where rHead.Field<String>("itemno") == rTail.Field<String>("itemno") // 两个DataTable连接的条件,有多个条件时用逻辑符“&&”
&& rHead.Field<String>("supplier") == rTail.Field<String>("supplier")
&& rHead.Field<String>("usercd") == rTail.Field<String>("usercd")
&& rHead.Field<String>("line") == sqlLine.Text
&& rHead.Field<String>("product_req_ym") == dtpYmd.Text.Replace("/","")
select new //自己想要查询的字段
{
product_date = DateTime.Parse(rHead.Field<String>("product_date")).ToString("dd"),
type = rHead.Field<String>("itemno").Substring(0,4),
requested_date = rHead.Field<String> ("requested_date"),
order_no = rHead.Field<String>("order_no")
};
//将执行query1获得的数据保存到DataTable中
foreach (var obj in query1)
{
mDtAll.Rows.Add(obj.product_date
, obj.type
, obj.requested_date
, obj.order_no);
}