mysql关于order by效率很慢的问题 [问题点数:90分,结帖人ouyangxiaolin]

Bbs1
本版专家分:0
结帖率 83.33%
Bbs1
本版专家分:0
版主
Blank
铜牌 2013年8月 总版技术专家分月排行榜第三
Blank
红花 2013年8月 Web 开发大版内专家分月排行榜第一
2010年2月 Web 开发大版内专家分月排行榜第一
Blank
黄花 2013年7月 Web 开发大版内专家分月排行榜第二
2013年6月 Web 开发大版内专家分月排行榜第二
Blank
蓝花 2016年7月 Web 开发大版内专家分月排行榜第三
2013年9月 Web 开发大版内专家分月排行榜第三
2010年1月 Web 开发大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
MySql 40W+数据,加上order by 查询速度很慢
explain Select * from vkq_kqdata Where EmpSysID<>'' Order by EmpNo ASC,KQDate ASC limit 0,30 vkq_kq
order by效率问题
SELECT * FROM(rnselect * from table <em>order</em> by PRIORITY,LASTUPDATErn) WHERE ROWNUM = 1rnrn这个table很大,加了<em>order</em> by以后导致数据库占用大量cpu最终服务器承受不了。rn其实从上面语句可知我只想得到一条最优先的数据,结果却把一张大表拿来排序。rn但是我又不能用min()函数,因为这里排序用到了2个字段,rn可能稍微好点的办法是拿一个字段排好序,然后另外一个字段用min函数,rn但是有更加好的办法吗?rn解决后加分,在线等待。谢谢了。
Order by效率问题
一个表中有两个字段,一个是Date类型,另一个是存放时间毫秒值number(10)的值(记录到秒,刚好10位)rnrn那现在我用<em>order</em> by应该选用哪一个,速度会更快?为什么?rnrn谢谢大家!!!!
关于mysql order索引问题
[code=sql]rnSELECT * FROM `question` `t` ORDER BY updatetime DESC LIMIT 50rn[/code]rn已经对updatetime建立索引了,并且字段非空.rn下面是表结构rn[code=sql]rn--rn-- 表的结构 `question`rn--rnrnCREATE TABLE IF NOT EXISTS `question` (rn `id` int(11) NOT NULL AUTO_INCREMENT,rn `title` varchar(256) NOT NULL,rn `user_id` int(11) NOT NULL,rn `date` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,rn `updatetime` datetime NOT NULL,rn `answer_num` int(11) DEFAULT '0',rn `click_num` int(11) DEFAULT '0',rn `content` text,rn `useful` int(11) DEFAULT '0',rn `nouse` int(11) DEFAULT '0',rn `tags` varchar(64) DEFAULT NULL,rn PRIMARY KEY (`id`),rn KEY `updatetime` (`updatetime`)rn) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=182 ;rn[/code]
[mysql]关于order by
我设置了topics和comments两个表如下rntopicsrn--idrn--create_timestamprn--authorrn--contentrnrncommentsrn--idrn--topic_idrn--create_timestamprn--authorrn--contentrnrn由于懒得想Join,Groupby那一套然,就用嵌套select写了这样很囧的sqlrnrn[code]select *,(select create_timestamp from comments where comments.id=topics.id) as update_timestamp <em>order</em> by update_timestamp,create_timestamp desc[/code]rnrn然后<em>问题</em>就出现了,结果的排列顺序并非理想化的新Topic自动到达顶部,由于一个新topic没有comments,上面得到的update_timestamp为null,我想实现的是如果update_timestamp为null,则令update_timestamp=create_timestamp,不知道该怎样实现?rnrnrn
MySQL之ORDER BY 详细解析
1 概述 MySQL有两种方式可以实现ORDER BY: 1.通过索引扫描生成有序的结果 2.使用文件排序(filesort) 围绕着这两种排序方式,我们试着理解一下ORDER BY的执行过程以及回答一些常见的<em>问题</em>(下文仅讨论InnoDB存储引擎)。 2 索引扫描排序和文件排序(filesort)简介 我们知道InnoDB存储引擎以B+树作为索引的底层实现,B+树的叶子节点存储着...
MySQL数据库order by 主键(索引) 查询慢解决方案
https://blog.csdn.net/hehexiaoxia/article/details/54585175  
mysql 加了orderby 查询速度超级慢怎么办
SELECT DISTINCT c.uniqueid, r.`name`, r.CustomerPhone, r.TocallerPhone, r.bound, r.Elapsed, r.LastTi
mysql中使用order by 和limit查询变慢解决办法
本文摘自:http://www.phpfensi.com/<em>mysql</em>/20141008/6772.html本文章来给大家介绍一篇关于<em>mysql</em>中使用<em>order</em> by 和limit查询变慢解决办法,因为在<em>mysql</em>分页利用limit来操作,同时排序也需要使用了<em>order</em> by ,所以经常会两者同是使用到,但是如果数据量大的话就会碰到查询<em>很慢</em><em>很慢</em>,下面我来给大家介绍解决办法。先来看一下测试性能,代码如...
mysql 关于order by的优化
explain SELECT m.*,u.username nickname,u.vip,u.appid FROM wwj_mingxi m left join wwj_user u on u.id=m.uid WHERE u.appid = 0 ORDER BY m.id desc LIMIT 0,20 花费时间4s 可以看出主要原因是使用了临时表,文件排序。也就是说<em>order</em>
关于mysqlorder by的疑问。
select a, b, c form tb where ... <em>order</em> by [color=#FF0000]id[/color] asc limit 0,100;rnrnselect [color=#FF0000]id[/color], a, b, c form tb where ... <em>order</em> by [color=#FF0000]id[/color] asc limit 0,100;rnrnrn这两个sql返回的数据为什么是不一样的?
oracle使用order by和rownum效率很慢,有没有提升的办法?
sql语句如下:rnselect * fromrn (select * from test where name='a' <em>order</em> by uptime)rn where rownum <=100 <em>order</em> by uptime,速度明显提高,但是结果是错的,因为这样是先取100条,再排序。rnrn说明:uptime为时间字段,已建立索引,内容有重复,不能设置为主键。rnrn现在库里有一千多万的数据,查询耗时为50来秒,求哪位高能提高下查询速度?rnrnrn
关于mysql导入数据效率问题
数据格式:rn 001 907101000 1185741.95 30 200511rn 001 907101100 129055.91 15 200511rn 001 907100900 3336656.03 50 200511rn 001 907071100 4802652.66 68 200511rn共3万条rnrn对应表rntableaa (id,aa,bb,jine,bushu,riqi)rnrn对应字段rn aa, bb, jine, bishu, riqirnrn用什么方式将文本数据导入到<em>mysql</em><em>效率</em>比较高?rnrn我用逐条读取插入数据库的方法,时间太长,而且容易超时rn
mysql优化之 ORDER BY Optimization
Use of Indexes to Satisfy ORDER BY在某些情况下,MySQL可以使用索引来满足ORDER BY子句,以避免执行filesort操作时涉及的额外排序。如果所有未使用的索引部分和所有额外的ORDER BY字段,在WHERE子句中都是和常量比较,那么即使ORDER BY字段与索引不完全匹配,也可以使用索引。假设(key_part1,key_part2)上有索引。以下查询将...
sql查询调优之where条件排序字段以及limit使用索引的奥秘
奇怪的慢sql 我们先来看2条sql 第一条: select * from acct_trans_log WHERE acct_id = 1000000000009000757 <em>order</em> by create_time desc limit 0,10 第二条: select * from acct_trans_log WHERE acct_id = 100000...
MySQL查询优化之十-ORDER BY优化(ORDER BY Optimization)
MySQL查询优化之十-ORDER BY优化(ORDER BY Optimization) 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:12951803 环境: MySQL版本:5.5.15 操作系统:windows 本文讨论ORDER BY优化(ORDER BY Optimization)。 本文介绍MySQL何时可以使用索引...
MySQL Order By 使用方法
在MySQL中的Order By 有2种排序实现方式 利用有序索引获取有序数据 文件排序 索引排序 取出满足过滤条件、作为排序条件的字段,以及可以直接定位到行数据的行指针信息,在 Sort Buffer 中进行实际的排序操作,然后利用排好序的数据根据行指针信息返回表中取得客户端请求的其他字段的数据,再返回给客户端。 这种方式,在使用explain分析查询的时候,显示Using index。...
[mysql]SQL语句性能优化--Group by中执行慢性能差的原因调查与处理
1. <em>mysql</em>在数据量较大的时候、使用group by查询结果集时速度<em>很慢</em>的原因可能有以下几种:1) 分组字段不在同一张表中2) 分组字段没有建索引3)分组字段加DESC后索引没有起作用(如何让索引起作用才是关键、且听下文分解)4)分组字段中加函数导致索引不起作用(这种一定要避免、本文不对这种情况展开说明)5)分组字段中含有TEXT或CLOB字段(改成VARCHAR字段)2.今天讲讲多表关联、但...
order by查询的效率
select dbo.fun1(tbl.id) as str,* as a from tbl <em>order</em> by strrn和select * from tbl <em>order</em> by dbo.fun1(tbl.id)rn哪个更快,还是一样快?rnrn另外,不用自定义函数(将自定义函数的内容写到查询sql中)和用自定义函数,哪个快?rnrn多谢!
MySQL order by 问题
第一个根据字段 正序排序为空的放在后面,第二个按字段倒叙排序,,先排第一个再排第二个 这个SQL该怎么写啊 求大神帮忙
Mysql自定义排序,order by问题
自定义常用的<em>order</em> by已经可以解决大部分<em>问题</em>,但如下<em>问题</em>却不好解决: 状态status,0:申请,1:通过,-1拒绝 此时新申请的在前,通过在后,拒绝的最后SELECT * FROM `MyTable` ORDER BY FIELD(`status`, 0, 1, -1)同时,此处的FIELD内部,可以是字符串,如下;SELECT * FROM `MyTable` WHERE `nam
mysql order by 引起的问题
先不说话,来两个运行结果看看SELECT sc.id AS id, sc.`Name` AS `name`, sco.`Name` AS companyName, scs.`Name` AS coldStoreName, ifnull(tt.flag, 0) AS flagFROM sys_monitor_group scLEFT JOIN sys_coldstore scs ON sc.CID ...
关于mysqlorder by与group by的问题
select * from (select * from t2 <em>order</em> by gid,col2 desc) as t group by gidnn这条sql语句执行完之后,为什么gid的排序是增序的???
mysql order by limit slow 慢查询
最近项目中遇到很奇怪的事情 言简意赅: 背景:数据量大约在300万左右, id为主键,有一个有好几个字段的索引, INDEX_1(f1,f2,f3,f4) , sql 查询条件为 f1=1, w5=xx,w6=zz.....,<em>order</em> by id desc limit 10; 加上where条件之后总的查询结果集才3条, 查询时间在 7秒左右,但是去掉<em>order</em> by id desc ,查询就变...
MySQL的where、order by、limit结合使用问题
项目中遇到这样一个sql语句,select * from table where id=92876 <em>order</em> by match_weight desc limit 10,此时<em>效率</em>极低,将降序改为升序
mysqlorder by优化的那些事儿
为了测试方便和直观,我们需要先创建一张测试表并插入一些数据: CREATE TABLE `shop` (   `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '记录ID',   `shop_id` int(11) NOT NULL COMMENT '商店ID',   `goods_id` int(11) NOT NULL COMMENT '物品ID', 
MySQL order by的一个优化思路
最近遇到一条SQL线上执行超过5s,这显然无法忍受了,必须要优化了。   首先看眼库表结构和SQL语句。 CREATE TABLE `xxxxx` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `owner` bigint(20) NOT NULL, `publicStatus` int(11) NOT NULL DEFAULT '0
mysql 5.6 order by Limit执行效率问题
今天研发的同事反馈一个sql执行140+s但是sql很简单,也有索引,那么<em>问题</em>出在哪里呢? 经过排查发现,<em>mysql</em>中,<em>order</em> by limit 一起用的时候是有<em>问题</em>的不是我们常用的思路,下面举例说明: select tid, productname, pic, min<em>order</em>, min<em>order</em>unit from `f_product` where cid =
关于mysql order by 多字段排序问题
<em>问题</em>1:多字段排序 解决方式:多字段加逗号即可,可两个或两个以上排序 ORDER BY t_spec.`<em>order</em>by` ASC,t_spec_item.`<em>order</em>by` ASC <em>问题</em>2:在mybaiti中使用pageHelper分页插件后,在mapper.xml中写的<em>order</em> by并没有执行。 解决方式:   注意:这里我将<em>order</em>by字段直接放在了controller层...
mysqlorder by
dm->InfoQuery->SQL->Add("select * from std ");rn dm->InfoQuery->SQL->Add("where ID="+IntToStr(ID)+"<em>order</em> by age");rn dm->InfoQuery->Open();rnrnrnGeneral SQL error [MySQL][ODBC 5.1 Driver][<em>mysql</em>d-5.0.67-community]You have an error in your SQL syntax;rncheck the manual that corresponds to your MySQL server version for the rught syntax to use near 'by age' at line 2'rnProcess stopped.Use Step or Run to continuernrnrn语句在linux下用<em>mysql</em>直接执行没有<em>问题</em>...rnrn是BDE和ODBC的<em>问题</em>么?
请教大家关于mysqlorder By Rand()问题
我查询的结果有170万比 数据 rn是几个表关联出来的 关联出来后随即取里面的10笔 我用<em>order</em> By Rand() limit 10 <em>效率</em>很低rn请教各位 是否有别的写法 谢谢
mysql order by
DECLARE cursor1 CURSOR FOR SELECT DISTINCT productName FROM stocks ORDER BY productname;rnDECLARE CONTINUE HANDLER FOR NOT FOUND SET done1 = 1; rnrnOPEN cursor1;rnREPEATrnFETCH cursor1 INTO product;rnIF NOT done1 THENrn rn SET zeroflag=0;rn BEGINrn DECLARE cursor2 CURSOR FOR SELECT * FROM stocks WHERE productName = product ORDER BY DATE,billCode,itemID;rn DECLARE CONTINUE HANDLER FOR NOT FOUND SET done2 = 1; rn OPEN cursor2;rn REPEATrn FETCH cursor2 INTO ID,itemID,product;rn .........rn..........rnrn高手帮忙看一下,我在一个游标内部嵌套一个游标的时候,第二个游标SELECT * FROM stocks WHERE productName = product ORDER BY DATE,billCode,itemID;<em>order</em> by为什么不起作用?我直接用这句话在命令行下运行是理想的结果,我在里面循环的时候打印出来的ID,结果不是按<em>order</em> by 我想要的顺序来执行的,而是按原来的ID一个一个往下游,可能是哪出<em>问题</em>了,急!rn
大数据量表查询语句order by 效率问题
系统中需要对一张大数据量表做分页查询,表数据量在几千万行的级别,而且仍然会不断增加。系统为J2EE应用,TOMCAT5.0作为应用服务器,框架采用spring 2.0,使用springJdbcTemplate做数据库持久。数据库采用oracle10g。分页查询只操作单张表A。A表已经建成按过车时间gcsj的分区表。以下是SQL语句:rnSELECT * FROM (SELECT ROWNUM no, a.* FROM (select a.* from a where hphm like ? and hpzl = ? and gcsj >= to_date(?,'yyyy-mm-dd hh24:mi:ss')and gcsj = 1rn目前的<em>问题</em>是:当gcsj(date型)范围很大时,比如一个月,SQL语句( select a.* from a where hphm like ? and hpzl = ? and gcsj >= to_date(?,'yyyy-mm-dd hh24:mi:ss')and gcsj ) <em>order</em> by gcsj desc )执行非常慢。如果去除<em>order</em> by 语句,在PL/SQL里执行速度还可以。但是由于必须做排序,所以当结果集非常大的时候速度<em>很慢</em>,几乎是没法查询得到。rn请问对于大数据量表查询返回结果集非常大的应用场景下,对于<em>order</em> by 的应用是否有好的解决方案?小弟在此多谢了!!!
mysql order by 原理和优化
原理 利用索引的有序性获取有序数据 利用内存/磁盘文件排序获取结果 1) 双路排序:是首先根据相应的条件取出相应的排序字段和可以直接定位行数据的行指针信息,然后在sort buffer 中进行排序。 2)单路排序:是一次性取出满足条件行的所有字段,然后在sort buffer中进行排序。 优化方式 给<em>order</em> by 字段增加索引,<em>order</em>by的字段必须在最前面设置 接下来给来说一下ord
MySQL高级 之 order by、group by 优化
<em>order</em> by示例示例数据: Case 1 Case 2 Case 3 Case 4 结论:<em>order</em> by子句,尽量使用Index方式排序,在索引列上遵循索引的最佳左前缀原则。 复合(联合)索引形如 key (‘A1’,’A2’,’A3’ ),排序的思路一般是,先按照A1来排序,A1相同,然后按照A2排序,以此类推,这样对于(A1),(A1,A2), (A1,A2,A3)的索引都是有
mysql同时使用order by和limit查询时的一个严重隐患 -- 丢失数据
我经常使用<em>order</em> by和limit来做数据分页显示并排序,一直也没发现过什么<em>问题</em>。但这两天缺遇到一个严重的<em>问题</em>,在按时间戳升序排列并用limit分批读取数据时,却发现在某些记录丢失了,表中明明有的记录确死活读取不到。研究了大半天终于发现了<em>问题</em>所在,记录一下以防忘记,也是给大家提个醒。
用了order by以后数据查询特别慢,帮我看下吧
sql语句如下: 排序的两个字段都加了索引, 但现在去掉第二个排序字段的话就非常快,加上就<em>很慢</em>, 我应该怎么处理呢? 大神帮忙看看
MySQL查询优化之order by的优化
原文地址:https://dev.<em>mysql</em>.com/doc/refman/5.7/en/<em>order</em>-by-optimization.html 译文: 8.2.1.14ORDER BY 优化 本节描述MySQL何时可以使用索引来满足<em>order</em> by子句,不能使用索引时使用的文件排序操作,以及优化器提供的有关<em>order</em> by的执行计划信息 有和没有limit的<em>order</em> by子句可能会返回...
mysql order by 多个字段问题
SELECT CheckStatus,CreateTime from qpy_2018jscxy_kjfz ORDER BY CheckStatus,CreateTime DESC   默认不写是ACS,是CheckStatus ASC,CreateTime DESC
mysqlorder by排序不正确的问题
那是因为<em>order</em> by 后的字段的值是一样的,需要再新加一个字段来区分排序。 例如,两个同学的分数都是88分,按分数降序排列,则 select * from student <em>order</em> by score DESC,但是每次查询,排序结果可能不一样,需要再加一个字段来排序,可以这样  select * from student <em>order</em> by score DESC, id ASC。
mysql order by 索引使用问题
关于<em>order</em> by的..rnrnINDEX (a, b)rnrnSELECT * FROM tableA ORDER BY a DESC , b DESC ;rn这样在explain里面看到是使用filesort的..rnrnrn而rnINDEX (a, b, c)rnSELECT * FROM tableA WHERE a = xx ORDER BY b DESC, c DESC;rn这样就会使用索引 不是filesort.....rnrn出现这样的情况是我的sql写的有<em>问题</em>还是本身<em>mysql</em>就这样....rnrn<em>mysql</em> 5.0.45
mysql order排序的简单问题
select *rnfrom news <em>order</em> by isTop,<em>order</em>Num desc; rnrn+----+--------------+--------+------------+---------------------+----------+---------------------+--------+-------+----------+rn| id | newsTitle | typeId | newsCnt | newsPic | newsFrom | newsReleaseTime | remark | isTop | <em>order</em>Num |rn+----+--------------+--------+------------+---------------------+----------+---------------------+--------+-------+----------+rn| 28 | 吊死扶伤 | 13 | 范德萨 | | 新闻来源 | 2008-11-07 09:37:14 | | 0 | 2 |rn| 24 | 地方法 | 14 | 饭店范德萨| | 新闻来源 | 2008-11-07 09:36:48 | | 0 | 1 |rn| 25 | 份额为恶完全 | 13 | 反而大放大| | 新闻来源| 2008-11-07 09:36:54 | | 0 | 1 |rn| 26 | 去 | 14 | 额外 | | 新闻来源 | 2008-11-07 09:37:01 | | 0 | 1 |rn| 27 | 范德萨范德萨 | 15 | 啊啊 | | 新闻来源 | 2008-11-07 09:37:08 | | 0 | 1 |rn| 29 | 发大水 | 14 | 发大水 | | 新闻来源 | 2008-11-07 09:37:21 | | 0 | 1 |rn| 30 | 放大 | 14 | 附答案 | 200811071052400.jpg | 新闻来源 | 2008-11-07 10:52:40 | | 0 | 1 |rn| 31 | dfs | 14 | fa | | 新闻来源 | 2008-11-07 10:55:02 | | 0 | 1 |rn| 32 | a | 14 | a | | 新闻来源 | 2008-11-07 10:55:08 | | 0 | 1 |rn| 23 | 新闻标题1 | 14 | 新闻内容| | 新闻来源 | 2008-11-07 10:58:08 | | 1 | 1 |rnrnrn我想先按 istop降序排列,再按ordrNum降序排列 这个顺序,为什么我这个语句不对?达人们帮一下,小弟刚学MYSQL
mysql查询的效率问题
select distinct(a.circulationno) circulationno, a.userid userid, c.empname username, a.subject subject, a.content content, a.savingperiod savingperiod, a.attachflag attachflag, a.status status, a.createtime createtime, '1' timepass, '0' candelete from tb_circulation a, tb_circulationlabel b, tb_empbaseinfo c where a.circulationno=b.circulationno and a.status = '1' and a.userid=c.id and (a.userid=509 or (b.labeledflag = '1' and readerid=509)) <em>order</em> by a.createtime descrnrntb_circulation表有8000条记录rntb_circulationlabel表有220000条记录rntb_empbaseinfo表有500条记录rn已在a,b中circulationno字段建立索引rn 现在执行上面这条sql语句需要5秒钟,系统响应显得<em>很慢</em>,以前大概是不到1秒,最近变慢了。大伙帮看看有没有办法来优化使它快一点。sql语句是固定在程序中了,不能动,现在只能从数据库着手。rnrn 另外,听说此版有位狼头大哥是高手,能否抽空赐教?谢谢!
急急急!!mysql,查询中ORDER BY A,B,C DESC 太慢,如何优化??
-
mysql字段值为某值排在最前,其它的根据另外数值类型字段降序
这个其实是DEDECMS的。有个表dede_archives,里面有几十个字段,其中flag字段的类型为set('c','h','p','f','s','j','a','b'),另外一个click字段
mysql指定某一字段中的 某一个值排序在最前面
<em>mysql</em>指定某一字段中的 某一个值排序在最前面 SELECT * from project where project_status=2 <em>order</em> by (case when task_progress="招标" THEN 1 when task_progress="等待确认" THEN 2 when task...
order by ID” 语句速度明显太慢
Adodc1.RecordSource = "select * from 正知 <em>order</em> by ID" ' 软件启动时,调入Access数据库里数据,正知这个表的数据,总共也只有124条,数据结构如
SQL添加order by后性能非常慢(也有可能是查询条件)!求高手帮忙优化下。。。
SELECT TOP 50 * FROM vw_App_Appointment WHERE 1 = 1 AND user_department_id = 1000 ORDER BY appointme
mysql update效率问题
请教经常开发的大哥一下,问下以下两种情况,哪个<em>效率</em>高啊:rnrn方法一:rnupdate table1 set aaa='wsad' where id=1234rnupdate table2 set bbb='asdf' where id=1234rnrn方法二:rnupdate table1 a,table2 b set a.aaa='wsad',b.bbb='asdf' where id=1234rnrn类似的情况,大虾们比较推荐用哪一种啊?项目数据量比较大也不是很大,可从各种方面讲述,谢谢各位了。
mysql 查询的效率问题
select record_minute, max(query_per_second),domain_name,query_per_second,delay from top_normal_domain_minute where record_minute between unix_timestamp('2009-11-03 13:31:29') and unix_timestamp('2009-11-12 13:31:32') group by domain_name <em>order</em> by max(query_per_second) desc limit 0,10;rn大家请看,这条sql语句的语义是,查询数据库表中某时间段内,查询量(wyery_per_second)最多的域名(排在前10的)。rn但是执行这条sql语句的时候却发现速度异常得慢,怎么优化它。我的qq:346985049,一直在,如果有高手看到的话,请帮帮我
mysql in 效率问题
select * from t where id in (1,2,3) <em>order</em> by s desc;rn在id和s上有索引。rnrn有没有比这句SQL<em>效率</em>更高的?
MySql效率问题
当表中字段为1个的时候 一千量级数据 增加操作用时24800毫秒 删除一千条数据用时32462毫秒 查找一千条数据用时1442毫秒 一万量级数据 增加操作用时269314毫秒 删除一千条数据用时318912毫秒 查找一千条数据用时54962毫秒 十万量级数据
mysql 效率问题
你们有没有测试过 这样的 2张表 user表(存用户基本信息) 和user_info表(存用户详细信息)有10万条数据rn需要获取最近注册用户的信息 rn1. join 查询 获取 信息rn2.先查user表 然后获取关联的id 在去查userinfo 那种方式快rnrn第一种方法 可能是浪费 sql 资源 rn2 可能浪费php资源
MYSQL两表联合查询速度超慢,应如何优化?
有表A大概三万多条数据,表B十二万多条数据,联合查询时速度超慢 select a.Country,a.City, count(b.*) as pvCount from a left join b on
mysql 按照字段类型是datetime的排序有bug,请求解决方法或原因
我的表格中有一个字段类型为 datetime, 用来记录到访时间,现在要按照时间排序(还有其他条件),如果查询出来的结果集有数据则能正确排序,如果没有数据就会自动填充一条数据,该字段对应的数据是 00
表字段加了索引但是查询依然很慢
之前遇到一个<em>问题</em>(因为最近又遇到了,所以记录下来),表字段加了索引但是查询依然<em>很慢</em>,大概的情况如下 <em>问题</em>描述: 有个表T_ORDER(匿名),字段若干,其中有个TX_TIME交易时间,MERCHANT_NO商户号都已经添加了索引,表数据量较大5000W+ SQL大致如下(实际SQL比下面的复杂一点点,会做 LEFT JOIN 其他表,但是不多): SELECT * FROM T_ORDE...
mysql group by limit (根据某一分组,取固定条数) 实现
小懒懒:IT公司php程序员 大坑比:小懒懒公司  产品 大坑比  需求:统计出    上次打boss周活动  每个服下   每个阵营  分数的前三名 我要的是后台功能  2秒之内显示出来!! (就是根据分数排名!!)  小懒懒  : 额 知道了! (艹  数据量这么大 坑我吧 难道每个服,每一个阵营 一个一个的查?!这种可以但是查询要使用好几个sql 如果服
SQL语句加入order by 子句之后的效率问题
在数据库中有一张表mytable,数据记录7000万条,有如下两条SQL语句1.select top 100 * from mytable <em>order</em> by operateDate 2.select * from (select top 100 * from mytable ) a   <em>order</em>  by a.operateDate       起初我使用第一条语句查询
mysql innodb表的效率问题
我有个innodb表,大约10个字段,其中6个有建索引,还有4个外键关系。在插入25w条记录的时候,1个小时没完成。rnrn对于innodb类型的数据表,对于大数据量情况下,在配置上大家有什么建议?
mysql效率问题
rn我在作一个面向本单位内部的信息发布系统.rn估计该系统完成后有20000人使用.rn500人左右同时联机使用rn我不得不把表建立在不同的数据库中rn请问:rn 频繁的切换数据库对<em>效率</em>有多大的影响.rn Thank YOU!
MySql的效率问题
MySQL 3.23.38 running on linuz-2.2.16-22smp,服务器为双CPU+1G内存。rn数据库中有一个articles表,其中有一列为text类型,表中约有5万条记录,表文件约有100MB。采用PHP连接数据库,连接较少情况下网站运行较流畅,但有时巨慢无比。top查看服务器进程:MySql占满了屏幕:(rn后删除约4万条记录,表文件减至约20MB:<em>问题</em>依旧:(rn请大侠指教,不胜感激!!
MySql语句效率问题
people 表有id 和 name,id是主键,自动增加。rn我想从id最后一个往前只搜索 n 行(n((select count(id))-1000) <em>order</em> by id desc limit 1;这样<em>效率</em>肯定很低。rnrn那么我就改成 select * from people where id > ((select id from people <em>order</em> by id desc limit 1)-1000) <em>order</em> by id rndesc limit 1;rn请问这样<em>效率</em>如何?有更好方法否?
Mysql多个LEFT JOIN使用ORDER不能使用索引导致查询过慢的解决方案
转自:http://www.tuicool.com/articles/qemmMfY Mysql在多个LEFT JOIN的情况下使用ORDER BY排序,就算是其中一个表的主键也仍然使用file sort排序,数据量多的话就相当的慢。 优化前语句 SELECT * FROM a LEFT JOIN b ON a.id=b.a_id ORDER a.id DESC
MySQL查询语句执行过程及性能优化-查询过程及优化方法(JOIN/ORDER BY)
在上一篇文章MySQL查询语句执行过程及性能优化-基本概念和EXPLAIN语句简介中介绍了EXPLAIN语句,并举了一个慢查询例子,本篇详细说明MySQL查询执行过程原理及优化方法。
请教关于MYSQL中order by的效率优化
我们用到了两个数据量比较大的表,表table1和表table2,每个表的数据都是四五百万条。 table1三个字段:id(主键),age,name table2两个字段:id(主键),status 执
oracle查询使用order by变慢的优化
oracle版本10.1.0 一条简单的sql,在pl/sql里执行,表里共有20多w条记录: select * from table (1s) select * from table <em>order</em> by date_report desc (18s) 加上<em>order</em> by date_report desc后竟要耗费18秒,这样的速度我想没有客户能接受。   开始优化: 首先在表里建立d
Oracle使用Order By后性能缓慢
各位好! 我在Oracle执行一段SQL,查询的结果大概有2万多条记录。如果不在Order by 语句的时候,查询的时间不到20S。但是如果如果加上Order By 子句,查询的性能就特别差,要十多分
MYSQL查询语句效率问题
任务:找出最贵物品的编号、销售商和价格。rn表如下:rn+---------+--------+-------+rn| article | dealer | price |rn+---------+--------+-------+rn| 0001 | A | 3.45 |rn| 0001 | B | 3.99 |rn| 0002 | A | 10.99 |rn| 0003 | B | 1.45 |rn| 0003 | C | 1.69 |rn| 0003 | D | 1.25 |rn| 0004 | D | 19.95 |rn+---------+--------+-------+rn比较以下几条sql语句执行<em>效率</em>:rn1.SELECT article, dealer, pricernFROM shoprnWHERE price=(SELECT MAX(price) FROM shop);rnrn2. select s1.article,s1.dealer,s1.pricern from shop s1,(select max(price) price from shop) s2rn where s1.price = s2.price;rnrn3.SELECT article, dealer, pricernFROM shoprnORDER BY price DESCrnLIMIT 1;rnrn以上三条那条执行<em>效率</em>高?rn如果您有更好的请写下来,谢谢各位!!
mysql分区效率问题
<em>mysql</em> 表的分区 需要按照主键来分,rn但是这样分区之后的查询<em>效率</em>和没分区之前有什么区别?rn不分区的表建立了索引之后查询<em>效率</em>,rn和分区之后的表的查询<em>效率</em>,感觉没有太大区别!(在有索引的情况下)rnrn我目前测试的结果是差不多,而且分区之后,如果查询条件复杂,甚至会影响查询速度。rnrn所以<em>mysql</em>分区意义何在?还是我分区方法不对?求求解,如何能在有索引的情况下在此提升查询<em>效率</em>!
求助,mysql效率问题
现在有三张表 表A 表B 表 C rnsql 1=A left join Brnsql 2=B left A rn两个都是返回listrnrn我先执行sql1,得到一个list然后rnfor(Object o:list)rn 执行sql2,条件是o.getId();得到list2rnrn然后 o.set(list2)rnrnrn但是执行<em>效率</em>特别慢,求助优化方案。rn说一下当时问什么不用 三表联合查询,因为 sql1 中的左连接 在一个 if条件判断中,有可能这个左连接不会生效,数据量也不大,但是线上 要将近十秒 数据才查询出来 ,求大牛
请教mysql效率问题
我做一个测试php<em>效率</em>的程序,测试php大量插入数据的时候需要的时间。rn测试环境是php5+apache2+<em>mysql</em>5+linux9。rnrn让其对一个表循环插入1百万条记录,其中有几个字段插入的数据是用随机数的方式生成的。插入1万条的数据没有任何<em>问题</em>。一旦到达10万或者超过10万,后面的就插不进去了。select一下,只插入了2万多条数据。rnrn测试了一下,不是随机数的<em>问题</em>,我插入一些常量如:"1111"之类的结果还是一样。<em>效率</em>极低。rnrn猛然想到了一点,这个表中其中有5个字段建了索引。建立索引会提高where,<em>order</em> by,group by这些语句的<em>效率</em>,但是会影响insert和update,delete的<em>效率</em>。不知这不是最关键的原因。另外怎样提高<em>效率</em>请前辈们指点一二。谢谢!
mysql 插入效率问题
// 插入操作 strsql = "insert into t1 values(2,'lyb')"; <em>mysql</em>_query(&<em>mysql</em>,"START TRANSACTION"); // 开启事务, 如果没有开启事务,那么<em>效率</em>会变得非常低下!耗时非常久 for (int i=0; i<10000; i++) { <em>mysql</em>_query(&<em>mysql</em>,strsql.c_str());
MYSQL 有个表数据有百万 如果做排序的话 性能非常差需要4~5秒才会出结果
MYSQL 有个表数据有百万 如果做排序的话 性能非常差需要4~5秒才会出结果请问如何优化? select * from t_code_log where create_time between '2
mysql 排序方法优化速度
一直困惑<em>问题</em>排序在50数据查询下降,ID 索引排序是好,但这个做好了优化,那按其他字段排序大大下降索引都加上了,还是慢,explain 查询结果吓人, 会有全表搜索,一直找解决的思路找到的答案:这几天做一个查询,需要在一个指定的结果集中进行查询,例如:select * from table_name where doc_id IN ('1dba', 'c20a', '907b')其中IN子句中的doc_id列表是通过调用一个外部接口获得一组doc_id常量列表,然后在本地库中搜索符合这个列表的数据记录。后来
mysql排序解决方案和查询SQL慢记录
经常会遇到排序<em>问题</em>,如用某些城市排前面等 SELECT `truename` , `truename` REGEXP '.*王.*' AS a FROM `keke_witkey_auth_law` ORDER BY a DESC 用字符串的某一个字符排序 用某个区间排序 SELECT work_year, work_year BETWEEN 1010851200 AND 141085
mysql多表关联查询,增加了排序速度慢??
-
Mysql-聚簇索排序慢案例分析
为什么当 执行select较多时,应当使用mysiam引擎呢?尤其是在有索引的情况下 本篇章依托一个实际应用,分析一下。 一.前言: 网上看到有一个有趣的现象,一个有1W数据量的表,执行不同的<em>order</em>by条件,查询时间非常大,这个是实际应用中确实出现的<em>问题</em>??为什么呢? 二.分析 a).情况描述: 1.有主键id,联合索引(id,ver);用前
mysql 效率问题???
我有一张表,表里有很多字段,但经常使用地只有几个字段.rn我想把不经常使用地字段放到另外一个表中,这样再操作经常使用地字段时,rn<em>效率</em>可能会高一些?? 是这样吗? 给个建议!
Mysql效率问题
表rnCREATE TABLE `ch1` (rn `id` int(10) unsigned zerofill NOT NULL AUTO_INCREMENT,rn `no` int(10) unsigned DEFAULT NULL,rn `dtime` datetime DEFAULT NULL,rn PRIMARY KEY (`id`)rn)rn查询语句 select sum(no) as number,dtime as date from ch1 group by month(dtime)rn数据大约1000w条记录,需要40秒,感觉太慢了,有什么解决办法?
常见Mysql的慢查询优化方式
这篇文章主要是就在公司实习的时候,对SQL优化工作作出的一些整理。     在公司实习的时候,导师分配了SQL慢查询优化的任务,任务是这样的:每周从平台中导出生产数据库的慢查询文件进行分析。进行SQL优化的手段也主要是修改SQL写法,或者新增索引。     现在从记录项目中的一点点做起。     (1)数据库中设置SQL慢查询       一、第一步.开启<em>mysql</em>慢查询       方...
mysql查询很慢优化方法1
解决方法:关联的字段建索引。具体分析如下:举例:表格:培训学生表,班级报名表需求:查询出学生报了哪些班级两表有个关联字段“CD”(学生学号)。视图sql:SELECT `t_px_stu`.`PX_STU_PK` AS `PX_STU_PK`, `t_px_stu`.`SYS_USER_PK` AS `SYS_USER_PK`, `t_px_stu`.`CD` AS `CD`, `t_px...
SQL 加了Order By超慢,去掉飞快,怎么解决
SELECT novel_booklist.ID AS aID, novel_chapter.ID AS bID, novel_category.ID AS cID, novel_booklist.
oracle分页查询不用order by排序速度反而变慢问题分析总结
[code=&quot;sql&quot;] --sql-1,不使用<em>order</em> by排序再分页,执行300多秒才出来: select * from (select t.*, rownum rn from (select a.RFID, decode(e.type, '112', e.name, sh.name) as name, ...
关于 Order By 的问题??
如下Sql语句rnselect top 15 * from view_Claim_Main rnwhere Subject like N'%A83F622AAAAAA0340%' or SN like N'%A83F622AAAAAA0340%'rnrn orrnrn(Guest_Type='1' and Guest_ID in(select Dealer_ID from dbo.Dealer where Contact like N'%A83F622AAAAAA0340%' or Title like N'%A83F622AAAAAA0340%'or Tel like N'%A83F622AAAAAA0340%')) rnrnorrnrn(Guest_Type='2' and Guest_ID in(select Customer_ID from Customer where Name like N'%A83F622AAAAAA0340%' or Company_Name like N'%A83F622AAAAAA0340%'or Mobile like N'%A83F622AAAAAA0340%' )) rnrn <em>order</em> by Create_Daternrn去掉 Order By Sql语句可以执行成功,加上Order By Sql语句持续执行,无法返回结果。rn请问这是什么原因造成的???
关于order by排序的问题。。。。
[code=SQL]rnrnrnSELECT o.[ID]rn ,o.[MatchID]rn ,o.[PlayCount]rn ,o.[UserID]rn ,o.[Rank]rn ,o.[Score]rn ,o.[Time],e.RegAccountsrn FROM [QPGameMatchDB].[dbo].[AllMatchRankRecord] o inner join [QPGameUserDB].[dbo].[AccountsInfo] e on o.[UserID]=e.[UserID] <em>order</em> by o.[time] DESCrn[/code]rnrn我现在根据time来排序 如何再根据 [PlayCount] 来分组 并且 根据 名次 rank来排序 ? 好麻烦啊 头疼rn现在rank 是乱得 不是按照 1 2 3 来排得 求教了rnrn现在的结果rnrnid PlayCount Rank time rn25 1 8 4146 2 10000 2011-12-01 16:52:09.880 22222222222rn26 1 8 5132 3 10000 2011-12-01 16:52:09.880 123456abcrn24 1 8 4145 1 10000 2011-12-01 16:52:09.863 和1rn23 1 7 5132 3 10000 2011-12-01 16:48:10.347 123456abcrn22 1 7 4147 2 10000 2011-12-01 16:48:10.330 33333333333rn21 1 7 4146 1 10000 2011-12-01 16:48:10.317 22222222222rn20 1 6 5132 3 10000 2011-12-01 16:40:53.893 123456abcrn18 1 6 4145 1 10000 2011-12-01 16:40:53.880 和1rn19 1 6 4146 2 10000 2011-12-01 16:40:53.880 22222222222rn17 1 5 5132 3 10000 2011-12-01 16:35:39.283 123456abcrn16 1 5 4146 2 10000 2011-12-01 16:35:39.270 22222222222rn15 1 5 4145 1 10000 2011-12-01 16:35:39.253 和1rn14 1 4 5132 3 10000 2011-12-01 16:24:48.770 123456abcrn13 1 4 4146 2 10000 2011-12-01 16:24:48.753 22222222222rn12 1 4 4145 1 10000 2011-12-01 16:24:48.720 和1rn11 1 3 5132 3 10000 2011-12-01 16:18:45.630 123456abcrn10 1 3 4147 2 10000 2011-12-01 16:18:45.613 33333333333rn9 1 3 4145 1 10000 2011-12-01 16:18:45.597 和1rnrn我想得到的结果rnrnid PlayCount Rank time rn25 1 8 4146 1 10000 2011-12-01 16:52:09.880 22222222222rn26 1 8 5132 2 10000 2011-12-01 16:52:09.880 123456abcrn24 1 8 4145 3 10000 2011-12-01 16:52:09.863 和1rn23 1 7 5132 1 10000 2011-12-01 16:48:10.347 123456abcrn22 1 7 4147 2 10000 2011-12-01 16:48:10.330 33333333333rn21 1 7 4146 3 10000 2011-12-01 16:48:10.317 22222222222rn20 1 6 5132 1 10000 2011-12-01 16:40:53.893 123456abcrn18 1 6 4145 2 10000 2011-12-01 16:40:53.880 和1rn19 1 6 4146 3 10000 2011-12-01 16:40:53.880 22222222222rn17 1 5 5132 1 10000 2011-12-01 16:35:39.283 123456abcrn16 1 5 4146 2 10000 2011-12-01 16:35:39.270 22222222222rn15 1 5 4145 3 10000 2011-12-01 16:35:39.253 和1rn14 1 4 5132 1 10000 2011-12-01 16:24:48.770 123456abcrn13 1 4 4146 2 10000 2011-12-01 16:24:48.753 22222222222rn12 1 4 4145 3 10000 2011-12-01 16:24:48.720 和1rn11 1 3 5132 1 10000 2011-12-01 16:18:45.630 123456abcrn10 1 3 4147 2 10000 2011-12-01 16:18:45.613 33333333333rn9 1 3 4145 3 10000 2011-12-01 16:18:45.597 和1rn
关于order by和limit的问题
表结构rn| v9_news | CREATE TABLE `v9_news` (rn `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,rn `catid` smallint(5) unsigned NOT NULL DEFAULT '0',rn `typeid` smallint(5) unsigned NOT NULL,rn `title` varchar(80) NOT NULL DEFAULT '',rn `style` char(24) NOT NULL DEFAULT '',rn `thumb` varchar(255) NOT NULL DEFAULT '',rn `keywords` varchar(255) NOT NULL DEFAULT '',rn `description` mediumtext NOT NULL,rn `posids` tinyint(3) unsigned NOT NULL DEFAULT '0',rn `url` char(100) NOT NULL,rn `list<em>order</em>` tinyint(3) unsigned NOT NULL DEFAULT '0',rn `status` varchar(2) NOT NULL DEFAULT '',rn `sysadd` tinyint(1) unsigned NOT NULL DEFAULT '0',rn `islink` tinyint(1) unsigned NOT NULL DEFAULT '0',rn `username` char(20) NOT NULL,rn `inputtime` int(10) unsigned NOT NULL DEFAULT '0',rn `updatetime` int(10) unsigned NOT NULL DEFAULT '0',rn `shorttitle` varchar(255) NOT NULL DEFAULT '',rn `list_description` mediumtext NOT NULL,rn PRIMARY KEY (`id`),rn KEY `inputtime` (`inputtime`),rn KEY `catid` (`catid`,`inputtime`),rn KEY `keywords` (`catid`,`keywords`),rn KEY `title` (`title`)rn) ENGINE=MyISAM AUTO_INCREMENT=1997500 DEFAULT CHARSET=gbkrnrn表索引:rn--------+---------+rn| | 0 | PRIMARY | 1 | id | A | 906171 | NULL | NULL | | BTREE | |rn| | 1 | inputtime | 1 | inputtime | A | 906171 | NULL | NULL | | BTREE | |rn| | 1 | catid | 1 | catid | A | 347 | NULL | NULL | | BTREE | |rn| | 1 | catid | 2 | inputtime | A | 906171 | NULL | NULL | | BTREE | |rn| | 1 | keywords | 1 | catid | A | 347 | NULL | NULL | | BTREE | |rn| | 1 | keywords | 2 | keywords | A | 453085 | NULL | NULL | | BTREE | |rn| | 1 | title | 1 | title | A | 906171 | NULL | NULL | | BTREE | |rn+---------+------------+-----------+--------------+-------------+-----------+-------------+------rn<em>问题</em>:看两条语句的执行结果以及语句rn1、select title,url from [color=#FF0000]pinpai_wfnews.v9_news[/color] where catid='1642' and username='duoduo' <em>order</em> by id asc [color=#FF0000]limit 1;[/color]rnEmpty set (2.13 sec)rn2、select title,url from pinpai_wfnews.v9_news where catid='1642' and username='duoduo' [color=#FF0000]<em>order</em> by id asc[/color] ;rnEmpty set (0.08 sec)rn3、select title,url from pinpai_wfnews.v9_news where catid='1642' and username='duoduo' [color=#FF0000]limit 1;[/color]rnEmpty set (0.11 sec)rn4、select title,url from pinpai_wfnews.v9_news where catid='1642' and username='duoduo' [color=#FF0000]<em>order</em> by catid asc limit 1;[/color]rnEmpty set (0.08 sec)rn为什么前两个的结果相差那么大?rn第4个更换排序字段后,速度明显变快,该字段有索引。rn然后在另一库中的同样一张表中,执行第一条查询语句结果相差那么大 这是为什么?rnselect title,url from [color=#FF0000]dzwww.v9_news[/color] where catid='1642' and username='duoduo' <em>order</em> by id asc limit 1;rnEmpty set (0.00 sec)
一个关于order by的问题
数据库中有一个整型字段,需要按照它进行排序,一般就是<em>order</em> by field ascrn但是因为该字段中有很多默认值为0,而实际显示的要求是0在最后面……rnrn也就是说,我用<em>order</em> by field asc看到的是0123...这样一个顺序,但是实际要求是123...0这样的顺序,请教各位DX有什么办法?rnrn先谢谢了
关于 order by 的问题
我想实现rnSELECT *rnFROM article_info <em>order</em> by unid,OrderFlag desc rn可是问什么不排序了 不明白
反编译工具Reflactor下载
反编译工具Reflactor 支持四种语言:IL,VB.net,C#,Delphi,不知道用混淆器后会是什么结果 (polaris说明:我把我用写的C#程序用这个软件打开,汗,居然全部反编译过来了,都不带走样的!太夸张了!看来DotNet写的程序必须打包加密外加混淆,能怎么加密就怎么加密了!) 转载请注明来源: 相关下载链接:[url=//download.csdn.net/download/chenxh/151633?utm_source=bbsseo]//download.csdn.net/download/chenxh/151633?utm_source=bbsseo[/url]
高清外挂必备字体下载
高清必备字体 加载字幕的字体 完善默认的系统 相关下载链接:[url=//download.csdn.net/download/key_ty/4674139?utm_source=bbsseo]//download.csdn.net/download/key_ty/4674139?utm_source=bbsseo[/url]
如何完全退出程序下载
在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序的效果,这是因为调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())只能杀死当前的activity,并不能杀死所有的activity 相关下载链接:[url=//download.csdn.net/download/lby5211abc/5757047?utm_source=bbsseo]//download.csdn.net/download/lby5211abc/5757047?utm_source=bbsseo[/url]
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件
我们是很有底线的