[置顶] [推荐] 视图和临时表哪个查询效率高? [问题点数:200分]

Bbs2
本版专家分:411
结帖率 98.71%
Bbs2
本版专家分:291
Bbs2
本版专家分:411
Bbs4
本版专家分:1889
Blank
GitHub 绑定GitHub第三方账户获取
Blank
领英 绑定领英第三方账户获取
Bbs1
本版专家分:12
Blank
黄花 2017年6月 Oracle大版内专家分月排行榜第二
Bbs4
本版专家分:1889
Blank
GitHub 绑定GitHub第三方账户获取
Blank
领英 绑定领英第三方账户获取
Bbs9
本版专家分:55742
版主
Blank
GitHub 绑定GitHub第三方账户获取
Blank
进士 2017年 总版技术专家分年内排行榜第八
Blank
优秀版主 2016年10月优秀大版主
优秀小版主
Blank
银牌 2017年1月 总版技术专家分月排行榜第二
Bbs1
本版专家分:0
Bbs9
本版专家分:53409
版主
Blank
榜眼 2018年总版新获得的技术专家分排名第二
Blank
金牌 2018年10月 总版技术专家分月排行榜第一
2018年9月 总版技术专家分月排行榜第一
2018年8月 总版技术专家分月排行榜第一
Blank
银牌 2018年12月 总版技术专家分月排行榜第二
2018年11月 总版技术专家分月排行榜第二
2018年7月 总版技术专家分月排行榜第二
Blank
铜牌 2019年1月 总版技术专家分月排行榜第三
Bbs6
本版专家分:5968
Bbs10
本版专家分:105710
版主
Blank
GitHub 绑定GitHub第三方账户获取
Blank
领英 绑定领英第三方账户获取
Blank
榜眼 2017年 总版技术专家分年内排行榜第二
Blank
探花 2018年总版新获得的技术专家分排名第三
Bbs4
本版专家分:1889
Blank
GitHub 绑定GitHub第三方账户获取
Blank
领英 绑定领英第三方账户获取
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:57
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:12
Blank
黄花 2017年6月 Oracle大版内专家分月排行榜第二
Bbs6
本版专家分:5968
Bbs7
本版专家分:12451
版主
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:35
Bbs1
本版专家分:0
Bbs3
本版专家分:667
Blank
黄花 2018年8月 扩充话题大版内专家分月排行榜第二
Bbs1
本版专家分:0
Bbs1
本版专家分:15
Bbs3
本版专家分:688
Bbs1
本版专家分:0
Bbs2
本版专家分:147
MySQL in和exists哪个效率高
很多人说exists的效率比in高,那我们来看看是不是是否是这样。MySQL的中的in语句是把外<em>表</em>和内<em>表</em>作hash 连接,而exists语句是对外<em>表</em>作loop循环,每次loop循环再对内<em>表</em>进行<em>查询</em>。先来看看这两个语句:1、select * from A where A.id in (select id from B);2、select * from A where exists (select *...
请问哪个效率高
想要再SQL数据库中<em>查询</em>某条记录,开放环境vc6。0。rn一种方法从第一条开始遍历查找rn另一中方法在vc中嵌入sql语句Select from where rnrnrn有人知道 对于“Select from where ”sql 是怎么实现的么?
strcpy和memcpy哪个效率高
strcpy和memcpy哪个<em>效率高</em>?为什么?
比较哪个效率高
为了提高速度和减轻数据库(SQL)的压力,在分类汇总方面提出两个方案rnrn一,用SQL的<em>视图</em>来汇总,每次从来<em>视图</em>里取各分类的总记录rn二,附加一个access库,每次删除增加都去操作Access<em>表</em>,取各分类总记录也是从ACCESS<em>表</em>中取rnrnrn哪一种方案好???
Dictionary.ContainsKey和List.BinarySearch哪个效率高
有一个静态的列<em>表</em>,需要频繁地判断一个字符串是否在该列<em>表</em>中。这样的情况用dictionary还是用list来保存这个列<em>表</em>比较合适。
bitblt和setbitmap哪个效率高?
我使用mfc,加载一个.bmp文件并贴图,有两种做法:rn1.使用setbitmap法.rn 先定义一个cstatic,然后:rn onpaint()rn...rn m_bitmap = loadbitmap(.....)rn m_static1.SetBitmap(m_bitmap); rn m_static1.MoveWindow(x,y,w,h,FALSE);rn...rnrn2.使用bitblt法:rn onpaint()rn...rn m_bitmap = loadbitmap(.....)rn CreateCompatibleDC...rn ...rn bitblt(...) rn ...rnrnrn请问哪种方法执行效率更高? setbitmap是否也调用了bitblt和CreateCompatibleDC?
到底哪个效率高啊?
[code=C/C++]rnfor(i=0;i
pipe和socket哪个效率高
局域网环境下的两台电脑,win2000的,rn互相之间进程通信是named pipe<em>效率高</em>还是socket?
格和DIV哪个效率高
制作 网页我认为用<em>表</em>格效率要高些,因为标记较少,执行速度快,
insert与DataAdapter.update()哪个效率高
最近在写一个数据导入的程序,从excel中读取数据,再插入到db中,如果采用insert语句或procedure逐行插入数据,每次都需要sqlconnection.open(),sqlconnection.close(),我想是不是会产生很大的开销。而DataSet自身带有update的方法,听说可以打批量的插入数据,而且性能很高。所以我写了个程序测试一下写入的速度(代码如下),但是另我惊讶的是测试结果如下:rn生产数据条数:10000rninsert插入10000条记录时间:00:00:04.8593750rndataset.update插入10000条记录时间:00:00:05.5781250rn为什么会这样呢,不是说insert的系统开销大于dataset.update()的吗?请各位指点。rn另外,还有什么更好,效率更高的数据批量插入DB的方法。谢谢。rnrnrn private void testinputdate()rn rn DateTime startdate = DateTime.Now; rn SqlConnection sqlconnection = new SqlConnection(connectionString);rn SqlDataAdapter sqldataadapter = new SqlDataAdapter("select * from Table_1 where 1=2", sqlconnection);rn DataSet dataset = new DataSet();rn sqldataadapter.Fill(dataset, "Table_1");rn Console.WriteLine("执行<em>查询</em>时间:0",(DateTime.Now - startdate).ToString());rnrn startdate=DateTime.Now;rn DataTable datatable = dataset.Tables[0];rn for (int i = 0; i < 100000; i++)rn rn DataRow datarow = datatable.NewRow();rn datarow["CompanyName"] = "companyname"+string.Format("0:0000",i);rn datarow["CompanyCode"] = "companycode" + string.Format("0:0000", i);rn datarow["Address"] = "address" + string.Format("0:0000", i);rn datarow["Owner"] = "owner" + string.Format("0:0000", i);rn datarow["Memo"] = "memo" + string.Format("0:0000", i);rnrn datatable.Rows.Add(datarow); rn rn Console.WriteLine("生成数据时间:0", (DateTime.Now - startdate).ToString());rn Console.WriteLine("生产数据条数:0", datatable.Rows.Count);rnrn //使用insertrn startdate = DateTime.Now;rn foreach (DataRow datarow in datatable.Rows)rn rn string sql = "INSERT INTO [Table_1]([CompanyName],[CompanyCode],[Address],[Owner],[Memo])" +rn "VALUES('" + datarow["CompanyName"].ToString() + "'" +rn ",'" + datarow["CompanyCode"].ToString() + "'" +rn ",'" + datarow["Address"].ToString() + "'" +rn ",'" + datarow["Owner"].ToString() + "'" +rn ",'" + datarow["Memo"].ToString() + "')";rn using (SqlConnection sqlconn = new SqlConnection(connectionString))rn rn sqlconn.Open();rn SqlCommand sqlcommand = new SqlCommand(sql, sqlconn);rn sqlcommand.ExecuteNonQuery();rn sqlconn.Close();rn rn rn Console.WriteLine("插入0条记录时间:1", datatable.Rows.Count, DateTime.Now - startdate);rn rn rn SqlCommand insertcommand = new SqlCommand("INSERT INTO [Table_1]([CompanyName],[CompanyCode],[Address],[Owner],[Memo])" +rn "VALUES(@CompanyName, @CompanyCode,@Address,@Owner,@Memo)",new SqlConnection(connectionString));rn insertcommand.Parameters.Add("@CompanyName", SqlDbType.NChar, 50, "CompanyName");rn insertcommand.Parameters.Add("@CompanyCode", SqlDbType.NChar, 25, "CompanyCode");rn insertcommand.Parameters.Add("@Address", SqlDbType.NChar, 255, "Address");rn insertcommand.Parameters.Add("@Owner", SqlDbType.NChar, 25, "Owner");rn insertcommand.Parameters.Add("@Memo", SqlDbType.NChar, 255, "Memo");rn sqldataadapter.InsertCommand = insertcommand;rnrn //使用dataadapter.updatern startdate = DateTime.Now;rn sqldataadapter.Update(dataset, "Table_1"); rn Console.WriteLine("插入0条记录时间:1", datatable.Rows.Count, DateTime.Now - startdate); rn
哪个效率高一些?
select A.* from A, B WHERE A.ID=B.ID AND B.ZT=3rnselect * FROM A WHERE A.ID IN (SELECT ID FROM B WHERE ZT=3)rnselect A.* FROM A, (SELECT ID FROM B WHERE ZT=3) C WHERE A.ID=C.IDrn,,哪个<em>效率高</em>些呢?还能不能写出效率更高的而且功能不变的SQL语句?
split和Regex.Match哪个效率高?
split和Regex.Match哪个<em>效率高</em>
JOIN ON 和 = 哪个效率高
现在有两个<em>表</em>,A和B,通过USERID 和 MMID 关联起来rn是用INNER JOIN ON 来连接两个<em>表</em>快,还是用 = 来连接快呢!!rn数据量A 为 4万多, B 为 15万多rnrn请高手指教,不胜感谢
宏和inline哪个效率高
宏和inline哪个<em>效率高</em>?rnrn大家讨论,没有分的。rnrn最好拿几个例子来看看。rn
这两个语句哪个效率高
select iuser.userid, iuser.username from iuser join ibuddy on iuser.userid=ibuddy.userid where ibuddy.buddyid=5310rnrnrnselect iuser.userid, iuser.username from iuser where userid in (select userid from ibuddy where buddyid=5310)rnrnrn就是把两个<em>表</em>中相同字段值的过滤出来。
实现交叉,是使用视图还是使用临时,哪个执行效率高
对于一般的行列数未知的交叉<em>表</em>,rn常使用两种实现方法:rn1、使用一些<em>视图</em>将一些相关数据过滤出来,然后在java或其他程序中,动态组成sql代码,然后运行rn2、使用临时<em>表</em>和存储过程,在存储过程中动态拼出sql然后执行<em>查询</em>,并将中间结果写入临时<em>表</em>,最终将临时<em>表</em>中的数据<em>查询</em>作为<em>查询</em>结果rnrn现在我想问一下,这两种方式在大数据量和并发用户较多的情况下,那一种效率更好一点?或者分别适合于什么样的环境?
在SQL2000中函数和视图哪个效率高有(20多万条记录)?
如题!取一段日期内的数据
临时查询
临时<em>表</em><em>查询</em>1 select pj,shuliang,num from (select avg(score) pj,user_id,count(user_id) as shuliang,count(status) num from b2b2c_user_score group by user_id) a where a.num>=2 统计<em>查询</em>2 select avg(score) pj,
strcpy和memcpy哪个效率高,提倡用哪个?
rt
这两种写法哪个效率高,哪个更好?
int func()rnrn ....rn return x;rnrnrnint main()rnrn int a = 0;rn int b = 0;rn int c = 0;rnrn a = func();rn rn return 0;rnrnrnint main() rnrn int a = func();rn int b = 0;rn int c = 0;rn
临时查询
小弟在创建历史标的时候遇到如下的问题,请各位大侠指导一下:rnif exists(select * from sysobjects where name='#test')rndrop table #testrngornrncreate table #testrn(rnsort int identity(1,1),rnnames varchar(50)rn)rnrn当以上语句在第二次执行的时候,会有如下的报错。rn数据库中已存在名为 '#test' 的对象。rnrn也就是drop table #test没有起作用。那么,rnif exists(select * from sysobjects where name='#test')rndrop table #testrngorn应该怎么写呢?
mysql 视图 临时模式
navcat 设置 sql语句 CREATE OR REPLACE ALGORITHM = TEMPTABLE
数据库视图和临时
1.使用with构建临时<em>表</em>格,来为后续操作提供方便。 with  <em>表</em>格名(属性列<em>表</em>)  as                                    //根据子<em>查询</em>的结构构造临时<em>表</em>格 执行的语句;           //注意子<em>查询</em>语句和执行语句之间不要加“;” 2.<em>视图</em> create view 名字(属性名重定义,自己选
视图与临时的区别
<em>视图</em>与临时<em>表</em>的区别是什么?rn每次做项目,在编写存储过程时,为了好保留数据,总是先建个临时<em>表</em>,那此时的临时<em>表</em>的作用是否就是<em>视图</em>?rn什么时候用<em>视图</em>?rn什么时候用临时<em>表</em>
视图和临时的区别?
最近看sqlserver联机帮助中介绍<em>视图</em>,发现<em>视图</em>好像根本没有什么用处。好像和临时<em>表</em>的意思差不多。请大家谈谈他们的区别.rn比如rn主要运用在哪方面,存在的意义?rn什么情况下它们会自动消失?rn性能如何?rnrn说得好,我肯定加分酬谢大家!rnrn先谢谢各位了
视图和临时的区别?
<em>视图</em>和临时<em>表</em>的区别?
视图还是临时
返回一条记录,是在数据库上建立一个<em>视图</em>,从<em>视图</em>里面搜索符合条件的记录,还是建一个临时<em>表</em>,用存储过程把符合条件的记录插到临时<em>表</em>中,再从临时<em>表</em>中选取数据,数据库中用100万条记录。因为临时<em>表</em>要对磁盘I/O操作,所以不知道哪个性能更高!
使用临时视图问题
使用两个<em>表</em>合成的temp1然后在<em>视图</em>里面绑定temp1为什么显示只有一条符合记录,查了临时<em>表</em>里面不只一条记录,奇怪了???rn
视图,临时,存储过程?
请大家说说应用过程中的经验。例如<em>视图</em>用什么什么情况下比较适合?
临时视图的作用域和生命周期
v_sql:='CREATE TEMPORARY TABLE ColToRow('||rn  'dept_name varchar2(50),'|| --部门名称rn  'new_alarm integer default 0,'||--新警情数量rn 'disposed integer default 0,'||--已经受理的数量rn 'fbk_ontime integer default 0,'||--按时反馈的数量rn 'fbk_late integer default 0,'||rn 'finish_ontime integer default 0,'rn 'finish_late integer default 0)';rn--创建临时<em>表</em>的sql如上rn1.rn对非全局的临时<em>表</em>:rnoracle的临时<em>表</em>和mssql的临时<em>表</em>的作用域和生命周期是不是一样的呢?mssql只对创建它的连接(会话)可用,其他会话可以创建相同名字的临时<em>表</em>而不会互相冲突 rnrn2.oracle是否存在和临时<em>表</em>在作用域和生命周期都差不多的<em>视图</em>??rn我想希望能有某种<em>视图</em>只对创建它的会话才是可用的,其他会话也可以创建相同名字的临时<em>视图</em>,没有的话要怎么样才可以实现?(过一段时间,可能会自我嘲笑问这样的问题-_-)
写成视图还是存储过程的效率高
有这样一张报<em>表</em>,三张<em>表</em>a、b、c结构相同需要 ,三<em>表</em>需要union操作,其中每张<em>表</em>都有一些<em>查询</em>限定条件,然后三张<em>表</em>union完了以后,还需要与其他代码<em>表</em>作联合<em>查询</em>一遍显示中文内容,请问我是把union以及同代码<em>表</em>的联合<em>查询</em>做成<em>视图</em>然后在需要时加<em>查询</em>条件好呢还是做成带参数的存储过程好?
临时和聚簇索引哪个更快?
需要用数据库里的数据画图,每次画时需要的数据比较多。rn有两个办法:rn1. 每次画图以前把相关数据选到临时<em>表</em>,再遍历每条数据,若数据有更新,每次都更新原<em>表</em>。rn2. 程序启动时,把所有的数据放到临时<em>表</em>,画图时直接取,运行时只更新临时<em>表</em>,退出时让原<em>表</em>同步临时<em>表</em>(若异常退出不同步问题不大)。
两段代码哪个执行效率高
[code=Java]class ReportCatalogueIndexCommandParser rnfinal String NO_GROUPING = "orgNoGrouping";rnstatic final int ORG_CATALOG = 0;rnstatic final int PART_CATALOG = 1;rnint getGroupingType(String grouping) rnSet orgGroupings = new TreeSet();rnorgGroupings.add(NO_GROUPING);rnorgGroupings.add("orgGroupByCountry");rnorgGroupings.add("orgGroupByTypeOfOrgName");rnif (orgGroupings.contains(grouping)) rnreturn ORG_CATALOG;rnrnif (grouping.equals("part")) rnreturn PART_CATALOG;rn elsernthrow new IllegalArgumentException("Invalid grouping!");rnrn[/code]rnrn上面这个是用SET的集合来装rnrn下面没有用集合装直接做判断rnrn[code=Java]rnrnclass ReportCatalogueIndexCommandParser rnstatic String NO_GROUPING = "orgNoGrouping";rn static final int ORG_CATALOG = 0;rn static final int PART_CATALOG = 1;rnrn public int getGroupingType(String grouping) rn if (grouping.equals(NO_GROUPING)||grouping.equals("orgGroupByCountry")||grouping.equals("orgGroupByTypeOfOrgName")) rn return ORG_CATALOG;rn else if (grouping.equals("part")) rn return PART_CATALOG;rn elsern throw new IllegalArgumentException("Invalid grouping!");rn rnrn[/code]rnrn想问的是如果数据量很大的话,哪种<em>效率高</em>,代码的效率问题,在编程中的一些好习惯rn有谁有这方面的总结或者参考资料,可以暴暴,大家一起分享rnrn
pivot 和动态行转列 哪个效率高?
数据量足够大的情况下(百万)rnpivot 和动态行转列 哪个<em>效率高</em>?
sql中,in 和 = 运算符哪个效率高
我测试了不少次,感觉他们两个都差不多。
mysql where和 join on 哪个效率高
今天总监和我说 where 比join <em>效率高</em>,问下论坛的大神
CString 的Find 和 Compare哪个效率高
CString str="abcdefg";rnstr.Find("abcdefg")!=-1rnrnstr.Compare("abcdefg")==0rnrn哪个<em>效率高</em>?
两个UPDATE语句 哪个效率高
[code=SQL]rnrnUPDATE ##FZGRZ_KG9050 SET F_DFKM = F_DFKM+'/'+ZWKMZD_KMMC FROM ZWKMZD WHERE ZWKMZD_JS='1' AND F_DFKM LIKE ZWKMZD_KMBH+'%'rnrnUPDATE ##FZGRZ_KG9050 SET F_DFKM = F_DFKM+'/'+(select ZWKMZD_KMMC FROM ZWKMZD WHERE ZWKMZD_JS='1' AND F_DFKM LIKE ZWKMZD_KMBH+'%')rnrn[/code]rnrn个人感觉是第一个吧?rn求教了
java数组拷贝哪个效率高
之前看到很多问题以及很多博客都有讨论java数组拷贝的效率问题,一般都是讨论如下几种方法 int[] b=a.clone(); System.arraycopy(a, 0, b, 0, n); int[] b=Arrays.copyOf(a, n); int[] b=Arrays.copyOfRange(a, 0, n); for 下面做了个测试:拷贝的数组长度为10000个int型数...
swicth 和 if...else if...else 哪个效率高
swicth 和 if...else if...else 哪个<em>效率高</em>,为什么?rn一般发现写swicth的多,请问2者的优缺点。
if/else与switch/case哪个效率高
在很多分支的情况下,if/else与switch/case哪个<em>效率高</em>?我认为是switch,而且我试验的结果也是switch高,但是有同事很肯定得跟我说switch是由if/else模拟出来的,效率必然没有if高。大家怎么认为呢?最好说出理由。
leftjoin和子查询哪个效率高呢?
<em>查询</em>部门名称rn1.rnselect a.*,b.dept_name from user a left join dept b on a.dept_id=b.dept_idrnrn2.rnselect a.*,rn(select dept_name from dept where dept_id=a.dept_id) dept_name rnfrom user a rnrnrn一般哪个比较好啊? <em>效率高</em>
ftps与sftp哪个传输的效率高
一个客户端,一个hadoop集群,用ftps还是sftp能保证高效而又安全从客户端向集群上传文件?或是别的什么协议?哪位大神能指导一下啊,谢谢啦!
请问类与函数哪个效率高
本人觉得类从程序角度看效率不如函数吧!rn请高人提点一下!
datalist和datagrid哪个效率高呀??
我的网站一开始全用datagrid做的,倒变快的:)rn但后来改成了datalist,分页全部自己写的代码:(rn但效果却:(rn变慢了;(
数据库哪种查询效率高
数据库多<em>表</em><em>查询</em>和嵌套<em>查询</em>哪个<em>效率高</em>?rn今天老大看我写的SQL,让我不要用嵌套<em>查询</em>。rn我认为嵌套查能更高效,老大说这样没效率,而且不好懂。
inner join和视图查询哪个快?
我看到<em>视图</em>其实也是一个inner join,不知道和我自己用sql写inner join然后where速度会不会有影响?rn另外,从<em>视图</em>里面去<em>查询</em>和直接去原始table里面去查哪个快啊?rnrn多谢
为什么临时居然会比变量的效率高!!!!!!
<em>表</em>变量:rndeclare @tb table(id int identity(1,1),re varchar(100))rninsert @tb select re=substring(@str1,id,charindex(@splitchar,@str1+@splitchar,id)-id)rnfrom 序数<em>表</em>rnwhere id<=len(@str1)+1 and charindex(@splitchar,@splitchar+@str1,id)-id=0rnrn以上是我在做一个批量传递字符串,拆分入库的2种不同方法(1,2,3,4,5,这样的格式)rn现在把情况说说!rn原来一直用的临时<em>表</em>,效率很高,后来由于要修改数据库帐户的权限,因为临时<em>表</em>是存放在TEMP数据库rn我单独为这个数据库设置帐户以后,而不是用超级管理员,当然就不能用临时<em>表</em>了,于是想到了<em>表</em>变量rn查看资料,说,<em>表</em>变量是存放在内存中处理的,效率要比临时<em>表</em>高,可当我完成以后rn(修改的部分其实就是我说的以上那句)结果,假设我原来可以提交8000个字符,现在却只能提交1000个字符,如果非要提交8000个字符,总是抱超时!!我于是又在服务器上,用跟踪器跟踪,然后看到这个存储过程执行的时间居然是30多秒,而且还未成功,原来用临时<em>表</em>的时候,3秒不到,搞定,我实在想不通rn其他测试环境完全一样!rn小弟实在不才,想请教,是怎么会事,或者说我哪些理解不对!!!谢谢
建个临时不知道那种效率高?
我有个临时<em>表</em>,我是每次用rnselect * into abcdrn创建<em>表</em>,然后用完以后删除,rn还是每次用完后每次清空delete * from abcd where id<>0rn不知道那种<em>效率高</em>?
,多关联使用临时哪种效率高
有三四张大<em>表</em>关联,关联条件有些复杂。rn以下四种方式,哪种方式效率更高些,更好些,最好从原理上讲解下。rn1、直接关联。rn2、with as 临时<em>表</em>方式,rn3、把这三张<em>表</em>分别按各自条件过滤掉生成实<em>表</em>。create tble as 方式,然后三张较小的<em>表</em>关联。rn4、存储过程中使用回话级临时<em>表</em>global temporary table这种方式。rnrn这个是我个人理解,以前处理过大数据量的关联,直接关联大概要跑几个小时,但是分割成临时<em>表</em>方式,10多分钟就跑完了。rnwith as 这种是写到内存中的<em>表</em>,按道理比直接读数据块要更直接些,是不是要快些。rn还有一种理解,with as 相当于子<em>查询</em>。子<em>查询</em>跟直接关联效率区别不大,甚至还不如直接关联。rnrnrn请各位给出些解释,从原理上的。谢谢!rnrn
查询90天内是否有订单,哪个效率高
各位司机好,rn我现在有一个需求,要<em>查询</em>一个商户90天内是否有订单,我已经找到了2种实现方式,一种是用exists, 一种是用count ,不知道哪种更优,有老司机能帮忙分析一下吗?rnrn方式一使用exists:rnrn[code=sql]rnSELECT 1 FROM dual WHERE EXISTS (select * from T_ORDER where customer_no = '1111111' rnand create_time > to_date('2017-10-24 00:00:00', 'yyyy-mm-dd hh24:mi:ss')rnand create_time < to_date('2018-01-24 23:59:59', 'yyyy-mm-dd hh24:mi:ss')rn);rn[/code]rnrn方式二使用count:rnrn[code=sql]rnrnSELECT count(1) from T_ORDER where customer_no = '1111111' rnand create_time > to_date('2017-10-24 00:00:00', 'yyyy-mm-dd hh24:mi:ss')rnand create_time < to_date('2018-01-24 23:59:59', 'yyyy-mm-dd hh24:mi:ss');rn[/code]rnrnrn下面是测试数据,省去了各种索引什么的。rnrn[code=sql]rnrndrop table "T_ORDER";rnrnCREATE TABLE "T_ORDER" (rn"ID" INT NOT NULL ,rn"CUSTOMER_NO" VARCHAR2(30) NULL ,rn"CREATE_TIME" DATE NULLrn);rnrnINSERT INTO "T_ORDER" ("ID", "CUSTOMER_NO", "CREATE_TIME") VALUES ('1', '1111111', TO_DATE('2018-01-24 11:25:02', 'SYYYY-MM-DD HH24:MI:SS'));rnINSERT INTO "T_ORDER" ("ID", "CUSTOMER_NO", "CREATE_TIME") VALUES ('2', '1111111', TO_DATE('2018-01-08 11:25:15', 'SYYYY-MM-DD HH24:MI:SS'));rnINSERT INTO "T_ORDER" ("ID", "CUSTOMER_NO", "CREATE_TIME") VALUES ('3', '1111111', TO_DATE('2018-01-01 11:25:24', 'SYYYY-MM-DD HH24:MI:SS'));rn[/code]
问题,字段多和记录多哪个查询效率高一些
我一个<em>表</em>,可以建成两种形式,rn一种是建50多个字段,这样大概会有4000多条记录rn另一种是建7个字段,这样大概会有220000条记录rn建成哪种方式<em>查询</em>起来效率比较高一些rnrn往这个<em>表</em>写记录的时候很少,大多数时候是<em>查询</em>读取这个<em>表</em>的数据.
eclemma-2.3.2下载
这个是官网最新版本的eclemma。希望能帮助大家 相关下载链接:[url=//download.csdn.net/download/simon_world/8129557?utm_source=bbsseo]//download.csdn.net/download/simon_world/8129557?utm_source=bbsseo[/url]
pgp1011中文版+注册机+许可证下载
pgp1011中文版+注册机+许可证 运行注册机即可得到许可证 相关下载链接:[url=//download.csdn.net/download/zq52480/3847530?utm_source=bbsseo]//download.csdn.net/download/zq52480/3847530?utm_source=bbsseo[/url]
java解惑 for all javaer下载
讲述如何在程序中避免程序缺陷和程序陷阱的,解惑的过程中,介绍了一些Java编程语言中许多不易被掌握的知识点,其阅读价值非常高,适合具有Java知识的学习者和有编程经验的Java程序员阅读。 相关下载链接:[url=//download.csdn.net/download/lcg_vip/4246166?utm_source=bbsseo]//download.csdn.net/download/lcg_vip/4246166?utm_source=bbsseo[/url]
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview
我们是很有底线的