LinqPad工具:帮你快速学习Linq

LinqPad工具:帮你快速学习Linq

参考:

http://www.cnblogs.com/li-peng/p/3441729.html

★:linqPad下载地址:http://www.linqpad.net/

一.基本操作

1.    第一步:连接数据库;

2. 进行具体的linq操作:

执行查询:

二.实战用法:Left Join和Inner Join

1. 首先建数据库:

代码:


create database

MyDataDemo

go

use MyDataDemo

go

drop table Student

create table Classes

(

class_Id int ,

class_Name varchar(100)

)

create table Student

(

st_Id int,

st_Name varchar(100),

class_Id int

)

insert into Classes values(1,‘OneC‘)

insert into Classes values(2,‘TwoC‘)

insert into Classes values(3,‘ThreeC‘)

insert into Student values(1,‘xiaoMing‘,1)

insert into Student values(2,‘zhangqiang‘,2)

insert into Student values(3,‘lihong‘,3)

insert into Student values(4,‘wangsi‘,1)

insert into Student values(5,‘zhaoWu‘,1)

insert into Student values(6,‘WangLiu‘,2)

2. 在linqPad的query标签里把Language 选择为c# Expression ,把Connection 选择数据MyDataDemo 就是我们上边建好的数据库如图:

3. Left Join:

输入最基本的Linq表达式点执行或者F5


from stu in Students

join cla in Classes

on stu.Class_Id equals cla.Class_Id

into MyJoin

from grp in MyJoin.DefaultIfEmpty()

select new {ClassId=grp.Class_Id,Class_Name=grp.Class_Name,st_Name =stu.St_Name}

执行结果:

3. inner join:


from stu in Students

join cla in Classes

on stu.Class_Id equals cla.Class_Id

select new {ClassId=cla.Class_Id,Class_Name=cla.Class_Name,st_Name =stu.St_Name}

执行结果:

补充:

数据表的连接有: 1、内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现 2、外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表都不加限制) 3、自连接(连接发生在一张基表内)
时间: 2024-10-10 07:20:25

LinqPad工具:帮你快速学习Linq的相关文章

linqPad快速学习LINQ(含视频)

在这里我向大家推荐的一个具是LinqPad有了这个工具并熟练使用就可以很快学习并掌握linq 安装步骤: 使用LINQPad可以很方便的调试linq以及lambda表达式.其中自带了linq以及F#简单入门教程,LINQPad不管你喜不喜欢,反正我喜欢了,呵呵.LINQPad很精简,只有一个exe文件,可以从http://www.linqpad.net下载到.不扯淡了,简单介绍下这个工具,展示下LINQPad的魅力,真的很不错. 先看下如何连接数据库,运行LINQPad按下图进行操作, 点击ne

ASP.NET EF 使用LinqPad 快速学习Linq

使用LinqPad这个工具可以很快学习并掌握linq linqPad官方下载地址:http://www.linqpad.net/ linqPad4百度云下载(for .NET Framework4.0/4.5):链接:http://pan.baidu.com/s/1gflmRDp  密码:3n3f linqPad5百度云下载(for .NET Framework 4.6):链接:http://pan.baidu.com/s/1dE5Z0VB  密码:qpgc LINQPad is not jus

快速学习C语言二: 编译自动化, 静态分析, 单元测试,coredump调试,性能剖析

上次的Hello world算是入门了,现在学习一些相关工具的使用 编译自动化 写好程序,首先要编译,就用gcc就好了,基本用法如下 gcc helloworld.c -o helloworld.o helloworld.c是源码,helloworld.o是编译后的可执行文件,运行的话就用 ./helloworld.o就可以了. 但是如果代码写的多了,每次改动完都手动用gcc编译太麻烦了,所以要用Makefile来 自动化这项工作,在当前目录下创建Makefile文件,大概如下 hellowor

MongoDB快速学习1

从我第一次听到Nosql这个概念到如今已经走过4个年头了,但仍然没有具体的去做过相应的实践.最近获得一段学习休息时间,购买了Nosql技术实践一书,正在慢慢的学习.在主流观点中,Nosql大体分为4类,键值存储数据库,列存储数据库,文档型数据库,图形数据库.今天主要快速的浏览了文档型数据库中目前市场占有率的最高的MongoDB数据库.记得初次见到和关注这个数据库还是我刚来上海的时候,公司将该数据库作为新建的项目管理系统的后台数据库,当时还是很向往的,只是无缘参与那个项目,也就一直没有和该数据库打

搭建工具辅助的知识学习流水线

1 知识学习的困难 学习对于个人乃至社会都是非常重要的.社会的发展离不开知识的传承,个人的进步依赖知识的积累.但在实际的学习过程中可能会遇到很多困难: 1.     互联网发展促使信息大爆炸,如何在其中找到有价值的目标? 2.     如何从众多的知识渠道将零散的内容收集汇总,形成系统化的知识? 3.     在工作和生活之余,怎样利用碎片化的时间提高学习的效率? 4.     在相同的时间投入下,如何获取更高学习成果? 下面针对问题从知识学习的流程出发,分享一些辅助工具和方法.工具和方法相互配

快速学习命令的方法

概述:用户使用shell跟内核交互,Linux 中有很多命令,不同的命令有不同的功能.多个命令合起来可以完成一个大的功能.命令很多我们不可能记得每条命令的用法. 所以,我们必须有一种方法来快速知道一个命令是如何使用的,有什么作用.所以,几乎所有的命令都提供了帮助手册,告诉命令的使用者如何使用命令.命令 的作用等等.帮助手册页很长,我们不可能为了使用一个命令,而从头到尾把帮助手册读完,这时候需要一种快速读懂(有目的的去读)命令的帮助手册的方法.是如何实现的呢?管理整个计算硬件的其实是核心(kern

60分钟Python快速学习(转)

60分钟Python快速学习(给发哥一个交代) 阅读目录 第一步:开发环境搭建: 第一个Python功能:初识Python 02.Python中定义变量不需要数据类型 03.在Pythod中定义方法 04.在Python中书写自己的类 60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空格缩进表示等. 今天自己用了60分钟快速学习了下Python的语

白话LINQ系列2---以代码演进方式学习LINQ必备条件

今天我们通一个简单的示例代码的演进过程,来学习LINQ必备条件:隐式类型局部变量:对象集合初始化器:委托:匿名函数:lambda表达式:扩展方法:匿名类型.废话不多说,我们直接进入主题. 一.实现要求 1.获取全部女生: 2.对满足要求的结果按年龄排序: 3.获取结果的前两名: 4.对获取结果计算平均年龄: 5.输出结果信息,包含姓名.性别.年龄: 说明:学生类为Student(包含学生完整信息),输出结果类为:StudentInfo(包含我们关心的信息,后面将演示它是如何消失的).在此我们不讨

快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是Windows,装虚拟机也麻烦,所以还不如30块钱 买个腾讯云,用putty远程练上去写代码呢. 我一直都是putty+VIM在Linux下开发代码,好几年了,只要把putty和VIM配置好,其实 开发效率挺高的. 买好腾讯云后,装个Centos,会分配个外网IP,然后买个域名,在DNSPod解析过去