|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你觉得数据库怎么样?查询变量和select子句之间的范例干系。可是,也能够利用var关头字唆使编译器在编译时揣度查询变量(或任何其他当地变量)的范例。比方,还可使用隐式范例化暗示本主题后面部分中演示的查询示例:
//Useofvarisoptionalhereandinallqueries.
//queryCitiesisanIEnumerable<City>justas
//whenitisexplicitlytyped.
varqueryCities=
fromcityincities
wherecity.Population>100000
selectcity;
入手下手查询表达式
查询表达式必需以from子句开首。它同时指定了数据源和局限变量。在对源序列举行遍历的过程当中,局限变量暗示源序列中的每一个后续元素。将依据数据源中元素的范例对局限变量举行强范例化。鄙人面的示例中,由于countries是Country工具数组,以是局限变量也被范例化为Country,如许就能够利用点运算符来会见该范例的任何可用成员。
IEnumerable<Country>countryAreaQuery=
fromcountryincountries
wherecountry.Area>500000
//sqkmselectcountry;
在利用分号或持续子句加入查询之前,局限变量将一向位于局限中。
查询表达式能够包括多个from子句。当源序列中的每一个元素自己就是汇合或包括汇合时,可以使用附加的from子句。比方,假定您具有一个Country工具汇合,而个中每一个工具都包括一个名为Cities的City工具汇合。若要查询每一个Country中的City工具,请利用两个from子句,以下所示:
IEnumerable<City>cityQuery=
fromcountryincountries
fromcityincountry.Cities
wherecity.Population>10000
selectcity;
停止查询表达式
查询表达式必需以select子句或group子句开头。
group子句
利用group子句可发生依照指定的键构造的组序列。键能够接纳任何数据范例。比方,上面的查询创立一个组序列,该序列包括一个或多个Country工具,而且它的键是char值。
varqueryCountryGroups=
fromcountryincountries
groupcountrybycountry.Name[0];
说句实话,Java跨平台根本就不是外行人想想的那种,一次编译,处处运行。 |
|