推迟查询的执行

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            //迭代在查询定义的时候不会进行,而是在执行每个foreach语句时执行
            //每次迭代中使用查询时,都会调用扩展方法
            List<string> strs = new List<string> { "关羽", "张飞", "马超", "黄忠", "赵云" };
            var query = from r in strs
                        where r.StartsWith("张")//查找集合中元素匹配第一个的元素
                        orderby r
                        select r;
            Foreach(query);//输出:张飞
            strs.Add("张昭");
            strs.Add("张合");
            strs.Add("张辽");
            strs.Add("曹操");
            Foreach(query);//输出:张飞,张合,张辽,张昭
            Console.ReadKey();

            //==========================================两次输出不变(值添加到集合里面去了)
            List<string> strs2 = new List<string> { "关羽", "张飞", "马超", "黄忠", "赵云" };
            var query2 = (from r in strs2
                         where r.StartsWith("张")//查找集合中元素匹配第一个的元素
                         orderby r
                         select r).ToList();//ToArray()  ToEnumerable()
            Foreach(query2);//输出:张飞
            strs2.Add("张昭");
            strs2.Add("张合");
            strs2.Add("张辽");
            strs2.Add("曹操");
            Foreach(query2);//输出:张飞
            Console.ReadKey();
        }

        static void Foreach(IEnumerable<string> s)
        {
            foreach (string item in s)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine("=========================");
        }
    }
}
时间: 2024-12-21 05:17:47

推迟查询的执行的相关文章

python 3 mysql sql逻辑查询语句执行顺序

python 3 mysql sql逻辑查询语句执行顺序 一 .SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN <right_table> ON <join_condition> WHERE <where_condition> GROUP BY <group_by_list> HAVING <havin

SQL 2005 中查询或执行另外的数据库操作的方法

原文:SQL 2005 中查询或执行另外的数据库操作的方法 摘要: 如果,你想在一台数据库服务器上,查询另一个台数据服务器的数据该如何做呢?如果,你想在同一台数据服务器上,在不同的数据库之间查询数据,又该怎么办呢? 1.Synonym 2.openquery 3.Linked Servers Server Object-->Linked Servers--> serverType 选择 SQL Server, 在 Security 中 选择"Be made using this se

查询Oracle执行的顺序

explain plan for select CFG_ID, COUNT(0) total from LOG_FD_VIDEO_SAMPLE a where 1 = 1 and SERVICE_TYPE = 35 and FOUND_TIME >= to_date('2014-07-08 00:00:00', 'yyyy-MM-dd HH24:mi:ss') and FOUND_TIME <= to_date('2014-07-08 16:00:00', 'yyyy-MM-dd HH24:m

查询SQLSERVER执行过的SQL记录

原文:查询SQLSERVER执行过的SQL记录 有的时候,需要知道SQLSERVER执行了什么语句,可以用下面的方法: SELECT TOP 1000 --创建时间 QS.creation_time, --查询语句 SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, ((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE QS.statement_end_offse

Oracle 查询每天执行慢的SQL

本文转载自http://blog.itpub.net/28602568/viewspace-1364844/ 前言: 工作中的您是否有 想对每天慢的sql进行查询.汇总或者行优化等情况,如下SQL希望对您有帮助 --- 查询每天执行慢的SQL: SELECT S.SQL_TEXT, S.SQL_FULLTEXT, S.SQL_ID, ROUND(ELAPSED_TIME / 1000000 / (CASE WHEN (EXECUTIONS = 0 OR NVL(EXECUTIONS, 1 ) =

oracle 查询最近执行过的 SQL语句

oracle 查询最近执行过的 SQL语句 select sql_text,last_load_time from v$sql order by last_load_time desc; SELECT   sql_text, last_load_time FROM v$sql WHERE last_load_time IS NOT NULL and sql_text like 'select%' ORDER BY last_load_time DESC; SELECT   sql_text, l

使用explain查询select查询语句执行计划

1.使用explain查询select查询语句执行计划 mysql> select * from baba where name ='fjdsjf'; +------+--------+ | id   | name   | +------+--------+ |    1 | fjdsjf | +------+--------+ 查询该sql语句的执行计划 mysql> explain select * from baba where name ='fjdsjf' \G; **********

spring MVC +freemarker + easyui 实现sql查询和执行小工具总结

项目中,有时候线下不能方便的连接项目中的数据源时刻,大部分的问题定位和处理都会存在难度,有时候,一个小工具就能实时的查询和执行当前对应的数据源的库.下面,就本人在项目中实际开发使用的小工具,实时的介绍开发使用过程.首先看图:大概的操作界面,基本使用easyui组件实现,欢迎大家吐槽: 界面包含了基本的sql查询 和 sql执行的小功能,把查询和执行分开,也是为了后台实现的需要,以及权限控制的考虑,毕竟执行的操作,会影响到系统的数据问题.查询和执行的菜单,是用easyui的手风琴式的菜单处理的.两

查询语句执行的5个阶段

查询语句执行的5个阶段1.SQL输入数据库接受用户输入的SQL语句,准备执行.2.语法分析对输入的SQL语句进行词法分析,语法分析,得到语法分析树:这一阶段输出一颗多叉树.3.语义检查根据语法树和系统的元信息进行语义检查,对语法分析树进行逻辑判断,树的结构不发生变化.对语法分析树上的各个结点进行语义分析,判断对象是否存在,是否重名:对不合语义的报告错误.4.SQL优化SQL优化通常包括两项工作:逻辑优化以及物理优化.它们都要对语法分析树的形态做修改:把语法分析 树编程查询书.其中逻辑查询优化将生