![Lambda表達(dá)式詳細(xì)總結(jié)_第1頁](http://file4.renrendoc.com/view14/M02/3B/02/wKhkGWbk0eKAXsixAAEkzWRLY6k961.jpg)
![Lambda表達(dá)式詳細(xì)總結(jié)_第2頁](http://file4.renrendoc.com/view14/M02/3B/02/wKhkGWbk0eKAXsixAAEkzWRLY6k9612.jpg)
![Lambda表達(dá)式詳細(xì)總結(jié)_第3頁](http://file4.renrendoc.com/view14/M02/3B/02/wKhkGWbk0eKAXsixAAEkzWRLY6k9613.jpg)
![Lambda表達(dá)式詳細(xì)總結(jié)_第4頁](http://file4.renrendoc.com/view14/M02/3B/02/wKhkGWbk0eKAXsixAAEkzWRLY6k9614.jpg)
![Lambda表達(dá)式詳細(xì)總結(jié)_第5頁](http://file4.renrendoc.com/view14/M02/3B/02/wKhkGWbk0eKAXsixAAEkzWRLY6k9615.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Lambda表達(dá)式詳細(xì)總結(jié)(一)輸入?yún)?shù)在Lambda表達(dá)式中,輸入?yún)?shù)是Lambda運(yùn)算符的左邊部分。它包含參數(shù)的數(shù)量可以為0、1或者多個。只有當(dāng)輸入?yún)?shù)為1時,Lambda表達(dá)式左邊的一對小括弧才可以省略。輸入?yún)?shù)的數(shù)量大于或者等于2時,Lambda表達(dá)式左邊的一對小括弧中的多個參數(shù)質(zhì)檢使用逗號(,)分割。示例1下面創(chuàng)建一個Lambda表達(dá)式,它的輸入?yún)?shù)的數(shù)量為0.該表達(dá)式將顯示“ThisisaLambdaexpression”字符串。[csharp]
\o"viewplain"viewplain
\o"copy"copy
()=>Console.WriteLine("This
is
a
Lambda
expression.");
分析2由于上述Lambda表達(dá)式的輸入?yún)?shù)的數(shù)量為0,因此,該Lambda表達(dá)式的左邊部分的一對小括弧不能被省略。示例2下面創(chuàng)建一個Lambda表達(dá)式,它的輸入?yún)?shù)包含一個參數(shù):m。該表達(dá)式將計(jì)算m參數(shù)與2的乘積。[csharp]
\o"viewplain"viewplain
\o"copy"copy
m=>m*2;
分析2上述Lambda表達(dá)式的輸入?yún)?shù)省略了一對小括弧,它與“(m)=>m*2”Lambda表達(dá)式是等效的。示例3下面創(chuàng)建一個Lambda表達(dá)式,它的輸入?yún)?shù)包含兩個參數(shù):m和n。該表達(dá)式將計(jì)算m和n參數(shù)的乘積。[csharp]
\o"viewplain"viewplain
\o"copy"copy
(m,n)=>m*n;
(二)表達(dá)式或語句塊多個Lambda表達(dá)式可以構(gòu)成Lambda語句塊。語句塊可以放到運(yùn)算符的右邊,作為Lambda的主體。根據(jù)主題不同,Lambda表達(dá)式可以分為表達(dá)式Lambda和語句Lambda。語句塊中可以包含多條語句,并且可以包含循環(huán)、方法調(diào)用和if語句等。示例1下面創(chuàng)建一個Lambda表達(dá)式,它的右邊部分是一個表達(dá)式。該表達(dá)式計(jì)算m參數(shù)的平方值。[csharp]
\o"viewplain"viewplain
\o"copy"copy
m=>m*n;
分析1如果Lambda表達(dá)式的右邊部分是一個語句塊,那么該語句塊必須被"{"和"}"包圍。示例2下面創(chuàng)建一個Lambda表達(dá)式,它的輸入?yún)?shù)包括兩個參數(shù):m和n。該表達(dá)式的右邊包含2個表達(dá)式;第一個表達(dá)式計(jì)算m和n參數(shù)的乘積,結(jié)果保存為result變量;第二個表達(dá)式顯示result變量的值。[csharp]
\o"viewplain"viewplain
\o"copy"copy
(m,n)=>{int
result=m*n;
Console.WriteLine(result);}
分析2上述Lambda表達(dá)式的右邊部分包含2個表達(dá)式,因此,該表達(dá)式的右邊部分必須被"{"和"}"包圍。(三)查詢表達(dá)式查詢表達(dá)式是一種使用查詢語法表示的表達(dá)式,它用于查詢和轉(zhuǎn)換來自任意支持LINQ的數(shù)據(jù)源中的數(shù)據(jù)。查詢表達(dá)式使用許多常見的C#語言構(gòu)造,易讀簡潔,容易掌握。它由一組類似于SQL或XQuery的聲明性語法編寫的子句組成。每一個子句可以包含一個或多個C#表達(dá)式。這些C#表達(dá)式本身也可能是查詢表達(dá)式或包含查詢表達(dá)式?!癫樵儽磉_(dá)式必須以from子句開頭,以select或group子句結(jié)束。第一個from子句和最后一個select子句或group子句之間,可以包含一個活多個where子句、let子句、join子
句、orderby子句和group子句,甚至還可以是from子句。它包括8個基本子句,具體說明如下所示?!駀rom子句:指定查詢操作的數(shù)據(jù)源和范圍變量。●select子句:指定查詢結(jié)果的類型和表現(xiàn)形式?!駑here子句:指定篩選元素的邏輯條件?!駆et子句:引入用來臨時保存查詢表達(dá)式中的字表達(dá)式結(jié)果的范圍變量?!駉rderby子句:對查詢結(jié)果進(jìn)行排序操作,包括升序和降序?!駁roup子句:對查詢結(jié)果進(jìn)行分組?!駃nto子句:提供一個臨時標(biāo)識符。join子句、group子句或select子句可以通過該標(biāo)識符引用查詢操作中的中堅(jiān)結(jié)果?!駄oin子句:連接多個用于查詢操作的數(shù)據(jù)源。示例1下面創(chuàng)建一個查詢表達(dá)式query,該查詢表達(dá)式查詢arr數(shù)組中的每一個元素。int[]arr=newint[]{0,1,2,3,4,5,6,7,8,9};分析1[csharp]
\o"viewplain"viewplain
\o"copy"copy
var
query1=from
n
in
arr
select
n;
示例2下面創(chuàng)建一個查詢表達(dá)式query2.該查詢表達(dá)式查詢arr數(shù)組中大于6的元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query2=from
n
in
arr
where
n
>6
select
n;
分析2變量只是保存查詢操作,而不是查詢的結(jié)果。當(dāng)查詢表達(dá)式執(zhí)行查詢操作時,才會計(jì)算該查詢表達(dá)式的結(jié)果。以上兩個變量的類型都屬于集合類型。(四)from子句from子句用來指定查詢表達(dá)式的數(shù)據(jù)源和范圍變量。它是查詢表達(dá)式的必有部分,并且它出現(xiàn)在最開始。數(shù)據(jù)源不但可以包括查詢本身的數(shù)據(jù)源,而且還可以包括子查詢的數(shù)據(jù)源。范圍變量用來表示數(shù)據(jù)源序列中的每一個元素。注意:from子句指定的數(shù)據(jù)源的類型必須為IEnumerable,IEnumerable<T>或一種派生類型。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢arr數(shù)組中的每一個元素。在query查詢表達(dá)式中,arr數(shù)組為數(shù)據(jù)源,n為范圍變量。n范圍變量的類型arr數(shù)據(jù)源的元素類型。分析1[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]
{0,1,2,3,4,5,67,8,9};
var
query
=from
n
in
arr
select
n;
下面我們來學(xué)習(xí)數(shù)據(jù)源和包含不同的from子句查詢表達(dá)式。數(shù)據(jù)源:指定數(shù)據(jù)的來源,它的形式可以為靜態(tài)數(shù)組、動態(tài)數(shù)組(Arraylist)、集合、數(shù)據(jù)集(DataSet)、數(shù)據(jù)表、MML片段、MML文件等。如果數(shù)據(jù)源實(shí)現(xiàn)了IEnumerable<T>接口,那么編譯器可以推斷范圍變量的類型為其元素類型。例如:數(shù)據(jù)源的類型為IEnumerable<UserInfo>,那么可以推斷出范圍變量的類型為UseInfo。示例2下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢list反省數(shù)組中的每一個元素。在query查詢表達(dá)式中,list反省數(shù)組為數(shù)據(jù)源。u為范圍變量。u范圍變量的類型為list數(shù)據(jù)源的元素類型(UserInfo)。分析2[csharp]
\o"viewplain"viewplain
\o"copy"copy
List<UserInfo>
list=...
var
query
=from
u
in
list
select
u;
如果當(dāng)數(shù)據(jù)源是非泛型IEnumerable類型(如ArrayList等)時,需要顯示指定范圍變量的類型。示例3下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢list數(shù)組中的每一個元素。在query查詢表達(dá)式中,list數(shù)組為數(shù)據(jù)源,u為范圍變量。u范圍變量的類型被指定為list數(shù)據(jù)源的元素類型(UserInfo)。分析3[csharp]
\o"viewplain"viewplain
\o"copy"copy
ArrayList
list
=new
ArrayList();
list.Add(...);
...
var
query
=from
UserInfo
u
in
list
select
u;
包含單個from子句的查詢表達(dá)式在查詢表達(dá)式中,from子句至少有一個。當(dāng)from子句只有一個時,構(gòu)成的查詢表達(dá)式被稱為包含單個from子句的查詢表達(dá)式。一般的,包含單個from子句的查詢表達(dá)式只包含一個數(shù)據(jù)源。示例4下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢arr數(shù)組中的每一個元素,它就是一個包含單個from子句的查詢表達(dá)式。分析4[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,12,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
select
n;
包含多個from子句的查詢表達(dá)式在查詢表達(dá)式中,當(dāng)from子句有兩個或兩個以上時,構(gòu)成的查詢表達(dá)式被稱為包含多個from子句的查詢表達(dá)式。示例5下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式包含兩個from子句,他們分別查詢兩個獨(dú)立的數(shù)據(jù)源;arr1數(shù)組和arr2數(shù)組。最后,使用select子句計(jì)算當(dāng)前元素的和。分析5[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr1=
new
int[]
{0,1,2,3,4,5,6,7,8,9};
int[]
arr2=new
int[]
{0,1,2,3,4,5,6,7,8,9};
var
query
=from
a
in
arr1
from
b
in
arr2
select
a
+b;
包含符合from子句的查詢表達(dá)式在查詢表達(dá)式中,有可能查詢表達(dá)式的數(shù)據(jù)源中的每一個元素本身也作為該查詢表達(dá)式的數(shù)據(jù)源。那么要查詢數(shù)據(jù)源中的每一個元素中的元素,則需要使用符合from子句。符合from子句類似于嵌套的foreach語句。示例6下面創(chuàng)建一個名稱為Test的類,該類包含兩個字段:Name和AliasName。其中,Name字段的類型為string,AliasName字段的類型為string類型列表。因此,它也可以作為子查詢表達(dá)式的數(shù)據(jù)源。分析6[csharp]
\o"viewplain"viewplain
\o"copy"copy
public
class
Test
{
Public
string
Name;
Public
List<string>
AliasName;
}
示例7下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式包含了一個符合from子句:第一個from子句查詢list泛型集合;第二個from子句查詢list集合中元素的AliasName字段,為第一個from子句的子查詢。最后,使用select子句將u變量的Name屬性的值和name變量的值拼接為一個字符串。分析7[csharp]
\o"viewplain"viewplain
\o"copy"copy
List<MUserInfo>
list
=...
var
query
=from
u
in
list
from
name
in
u.AliasName
select
u.Name+name;
(五)select子句select子句用來指定將在執(zhí)行查詢時產(chǎn)生的值的類型。查詢表達(dá)式必須以select子句或group子句結(jié)束。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢arr數(shù)組中的每一個元素。分析1[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]
{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
select
n;
示例2下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢arr數(shù)組中的每一個元素和10的乘積。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]
{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
select
n*10;
分析2select子句中的“n*10”表達(dá)式?jīng)Q定了查詢結(jié)果的表現(xiàn)形式,即計(jì)算每一個元素和10的乘積。示例3下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式查詢arr數(shù)組中的每一個元素,查詢結(jié)果是一個對象的集合對象包含兩個屬性:ID和Name,它在select子句中由匿名對象初始化器創(chuàng)建。每一個對象的ID屬性的值是當(dāng)前元素的值、Name屬性的值為元素的值的字符串的表現(xiàn)形式。分析3[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
select
new
{
ID=n,
Name
=n.ToString()
};
(六)where子句where子句用來指導(dǎo)將在查詢表達(dá)式中返回?cái)?shù)據(jù)源中的哪些元素。它將一個布爾條件應(yīng)用于數(shù)據(jù)源中的每個元素,并返回指定條件的元素。查詢表達(dá)式可以包含一個或多個where子句。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢小于3的元素[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]
{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
where
n
<3
select
n;
分析1上述where子句只包含一個布爾表達(dá)式“n<3”,該表達(dá)式將篩選小于3的元素。在一個where子句中,也可以包含多個布爾表達(dá)式,各個表達(dá)式直接使用邏輯運(yùn)算符(如&&和||)分隔。示例2下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢大于3且小于6的元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
where
n
>3
&&
n<6
select
n;
分析2上述where子句包含兩個布爾表達(dá)式"n>3"和"n<6",它們共同指定將篩選大于3且小于6的元素。這兩個布爾表達(dá)式使用&&運(yùn)算符鏈接,即計(jì)算這兩個布爾表達(dá)式的邏輯與。where子句不但可以包含布爾表達(dá)式,而且還可以包含返回布爾值的方法。示例3下面創(chuàng)建一個查詢表達(dá)式query.該查詢表達(dá)式從arr數(shù)組中查詢?yōu)榕紨?shù)的元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
private
bool
IsEven(int
i)
{
return
i%2==0?true:false;
}
var
query
=from
n
in
arr
wehre
IsEven(n)
select
n;
分析3上述where子句包含一個返回布爾值的方法"IsEven(inti)"。該方法判定元素是否為偶數(shù)。如果是,則返回true,否則返回false。(七)let子句let子句用來創(chuàng)建一個新的范圍變量,它用于存儲子表達(dá)式的結(jié)果。let子句使用編程者提供的表達(dá)式的結(jié)果初始化該變量。一旦初始化了該范圍變量的值,它就不能用于存儲其他的值。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢?yōu)榕紨?shù)的元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
let
isEven
=return
n%2==0?true:false;
where
isEven
select
n;
分析1"returnn%2==0?true:false"表達(dá)式判斷n元素是否為偶數(shù)。如果是,則返回true,否則返回false?!發(fā)etisEven=returnn%2==0?true:false”表達(dá)式使用let子句創(chuàng)建新的范圍變量isEven,用來保存"returnn%2==0?true:false"表達(dá)式的結(jié)果。"whereisEven"表達(dá)式使用where子句篩選isEven的值為true的元素。(八)orderby子句orderby子句可使返回的查詢結(jié)果按升序或者降序排序。升序由關(guān)鍵字ascending指定,而降序由關(guān)鍵字descending指定。注意:orderby子句默認(rèn)排序方式為升序。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢大于1且小于6的元素,并且按照n元素對查詢結(jié)果進(jìn)行降序排序。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
where
n>1
&&
n<6
orderby
n
descending
select
n
;
分析1orderby子句可以包含一個或多個排序表達(dá)式,各個排序表達(dá)式使用逗號(,)分隔。示例2下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢大于1且小于6的元素。它使用orderby子句對查詢結(jié)果進(jìn)行排序,且包含兩個排序關(guān)鍵字,具體說明如下所示:n%2:按照升序排序;n:按照降序排序。注意:n%2排序關(guān)鍵字優(yōu)先級大于n排序關(guān)鍵字。因此,該查詢表達(dá)式的結(jié)果首先按照n%2排序關(guān)鍵字升序排序,然后在按照n排序關(guān)鍵字降序排序。分析2在"orderbyn%2ascending,ndescending"表達(dá)式中,第一個排序關(guān)鍵字后的"ascending"可以省略。因?yàn)槟J(rèn)排序方式為升序。(九)group子句group子句用來將查詢結(jié)果分組,并返回一對象序列。這些對象包含零個或更多個與改組的key值匹配的項(xiàng),還可以使用group子句結(jié)束查詢表達(dá)式。注意:每一個分組都不是單個元素,而是一個序列(也屬于集合)。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢大于1且小于6的元素,并且按照n%2表達(dá)式的值對查詢結(jié)果進(jìn)行分組。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
where
n>1
&&
n<6
group
n
by
n%2;
分析1query查詢表達(dá)式的結(jié)果是一個序列(類型為IEnumerable<IGrouping<int,int>>),該序列的元素類型為IGrouping<int,int>.其實(shí),該查詢結(jié)果中的元素也是一個序列。示例2下面使用兩個foreach語句顯示query查詢表達(dá)式結(jié)果中每一個元素的值。[csharp]
\o"viewplain"viewplain
\o"copy"copy
foreach(var
g
in
query)
{
foreach(var
o
in
g)
{
Console.WriteLine(0);
}
}
分析2使用group子句對查詢結(jié)果分組后,每一個分組都存在一個鍵(由key屬性表示)。通過key屬性可以獲取每一個分組的鍵的值。(十)into子句
into子句可以用來創(chuàng)建一個臨時標(biāo)識符,將group、join或select子句的結(jié)果存儲到這個標(biāo)識符中。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式從arr數(shù)組中查詢大于1且小于6的元素,并且按照n%2表達(dá)式的值對查詢結(jié)果進(jìn)行分組。該查詢表達(dá)式的具體說明如下所示:wheren>1&&n<6:指定篩選大于1且小于6的元素。groupnbyn%2intog:按照n%2表達(dá)式的值對查詢結(jié)果進(jìn)行分組,并使用into子句創(chuàng)建臨時標(biāo)識符g。該臨時標(biāo)識符臨時保存分組結(jié)果。fromsning:從g標(biāo)識符指定的每一個分組中查詢sn元素。selectsn:表示查詢sn元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arr
=new
int[]{0,1,2,3,4,5,6,7,8,9};
var
query
=from
n
in
arr
where
n>1&&
n<6
group
n
by
n%2
into
g
from
sn
in
g
select
sn;
分析1上述查詢表達(dá)式的查詢結(jié)果包括4個元素,依次為2、4、3和5(十一)join子句join子句用來連接兩個數(shù)據(jù)源,即設(shè)置兩個數(shù)據(jù)源之間的關(guān)系。join子句支持以下3種常見聯(lián)接方式。內(nèi)部聯(lián)接:元素的鏈接關(guān)系必須同時滿足兩個數(shù)據(jù)源,類似于SQL語句中的innerjoin子句。分組聯(lián)接:包含into子句的join子句。左外部聯(lián)接:元素的鏈接關(guān)系必須滿足聯(lián)接中的左數(shù)據(jù)源,類似于SQL語句中的leftjoin子句。內(nèi)部聯(lián)接:join子句的內(nèi)部聯(lián)接要求兩個數(shù)據(jù)源都必須存在相同的值,即兩個數(shù)據(jù)源都必須存在滿足聯(lián)接關(guān)系的元素。示例1下面創(chuàng)建一個查詢表達(dá)式query。該查詢表達(dá)式使用join子句聯(lián)接了arra和arrb數(shù)組,具體說明如下。創(chuàng)建arra數(shù)組,它包含10個元素(0~9)。創(chuàng)建arrb數(shù)組,它包含5個元素(0、2、4、6和8)。創(chuàng)建query查詢。fromainarra:從arra數(shù)組中選擇元素,并表示為a。wherea<7:從arra數(shù)組中選擇小于7的元素joinbinarrbonaequalsb:將arra和arrb數(shù)組進(jìn)行聯(lián)接,同時滿足a和b相等的條件。其中,b元素是arrb數(shù)組中的元素。selecta:選擇a元素。[csharp]
\o"viewplain"viewplain
\o"copy"copy
int[]
arra
=new
int[]
{0,1,2,3,4,5,6,7,8,9};
int[]
arrb
=new
int[]{0,2,4,6,8};
var
query
=from
a
in
arra
where
a
<7
join
b
in
arrb
on
a
equals
b
select
a;
分析1上述查詢表達(dá)式首先選擇小于7的元素,(包括0~6),然后再喝arrb數(shù)組進(jìn)行聯(lián)接,并獲取既包含在{0,1,2,3,4,5,6}集合中,又包含在arrb數(shù)組中的元素。最終,查詢表達(dá)式的結(jié)果包含4個元素(0、2、4和6)分組聯(lián)接:join子句的分組聯(lián)接包含into子句的join子句的鏈接。它將左數(shù)據(jù)源與右數(shù)據(jù)源的元素一次匹配。左數(shù)據(jù)源的所有元素都出現(xiàn)在查詢結(jié)果中。若在右數(shù)據(jù)源中找到匹配項(xiàng),則使用匹配的數(shù)據(jù),否則用空表示。示例1下面創(chuàng)建一個查
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球光學(xué)透明粘合帶行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025合同范本勞務(wù)派遣合同模板書人力資源和企業(yè)新
- 2025用戶服務(wù)合同
- 2025委托律師代理合同范本范文
- 土地轉(zhuǎn)讓居間合同
- 美容師勞動合同書
- 消殺服務(wù)合同范文
- 2025公司用工合同范本
- 戰(zhàn)略合作協(xié)議書合同
- 第1課+古代亞非(教學(xué)設(shè)計(jì))【中職專用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- 新教科版六年級下冊科學(xué)全冊教案
- 物業(yè)客服管家的培訓(xùn)課件
- 2024年房地產(chǎn)行業(yè)的樓市調(diào)控政策解讀培訓(xùn)
- 《統(tǒng)計(jì)學(xué)-基于Python》 課件全套 第1-11章 數(shù)據(jù)與Python語言-時間序列分析和預(yù)測
- 《GMP實(shí)務(wù)教程》 完整全套教學(xué)課件 項(xiàng)目1-14 GMP基礎(chǔ)知識-藥品生產(chǎn)行政檢查
- 裝飾定額子目(河南省)
- 【高速鐵路乘務(wù)工作存在的問題及對策研究9800字】
- 北師大版英語課文同步字帖三年級下冊課文對話原文及翻譯衡水體英語字帖三年級起點(diǎn)
- GB/T 2550-2016氣體焊接設(shè)備焊接、切割和類似作業(yè)用橡膠軟管
- GB/T 21295-2014服裝理化性能的技術(shù)要求
評論
0/150
提交評論