标签: query-optimization

如果我的查询中有太多的OR运算符,如何优化mysql查询?

使用PHP和MySQL

我从facebook上抓了一大堆facebook用户ID.

现在我想在我的应用程序中找到该数组的相应用户名.

显然,在我的应用程序中,用户表包含唯一的用户名和唯一的fb_uid值.

我对编程的基本理解使我有两种方式:

1)使用循环并运行fb_uid数组并逐个查找用户名.

要么

2)创建一个怪物查询,例如从用户中选择distinct(用户名),其中fb_uid = value1或fb_uid = value2 ...

那么有更好的出路吗?

谢谢.

php mysql query-optimization

1
推荐指数
1
解决办法
2233
查看次数

有没有更快的方法来执行此mysql查询?

有没有更快的方法来执行这个最简单的服务器负载查询?我不认为我曾尝试过除此方法之外的任何其他方法:

$sql = 'SELECT thing FROM table WHERE id="' . $id . '" ';
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
$thing = $row[0];
Run Code Online (Sandbox Code Playgroud)

有什么方法可以改善吗?

mysql sql query-optimization query-performance

1
推荐指数
1
解决办法
79
查看次数

简单的查询优化

嘿伙计们,如果这个问题太简单,请原谅我.我基本上想要计算数据库中男性和女性的数量.所以我知道两个简单的查询将实现这一点,例如:

select count(*) from table where gender='male'
select count(*) from table where gender='female'
Run Code Online (Sandbox Code Playgroud)

但是,这似乎非常低效,因为我知道下面的查询都是相同的查询:

select count(*) from table where gender='female'
select count(*) from table where gender<>'male'
Run Code Online (Sandbox Code Playgroud)

是否有最佳方法来检索此信息,而无需两次遍历数据库中的每一行?

sql database count query-optimization

1
推荐指数
2
解决办法
544
查看次数

内存中的SQL Server 2005"Pin"数据

我们在仅运行SQL Server 2005的专用盒子上运行我们的应用程序数据库.这个DB服务器有32 Gb的RAM ...而数据库文件本身只有6 Gb.

我想强制几个重读/查询表进入SQL内存缓冲区以提高速度.

我知道SQL服务器非常适合在从磁盘读取数据后将必要的数据保存在内存中......但是我们的客户可能更喜欢他们的查询在第一时间快速运行." 第二次最快的表现"并不是产品亮点.

缺少旧的"Pin Table"DBCC命令..有什么想法吗?

我编写了一个"CacheTableToSQLMemory"Proc,它循环遍历所有表的索引(Clustered&Non),在Temp表中执行"Select*".我已经安排SQL Agent每15分钟运行一次"缓存大量表",试图将页面保留在内存中.

它在很大程度上工作..但即使在我缓存了所有查询的相关表之后,运行查询仍然增加了该表的缓存页数.然后它第二次更快.想法?

我们正在运行PAE和AWE.SQL设置为使用8到20 GB的RAM.

sql memory-management sql-server-2005 query-optimization

1
推荐指数
1
解决办法
2179
查看次数

真正的"统计"是做什么的?

真的STATISTICS是什么?并且其中在其中senarios查询优化使用?

sql t-sql sql-server query-optimization

1
推荐指数
1
解决办法
176
查看次数

在mysql查询中*是否比选择特定列慢?

我想弄清楚是否:

SELECT * FROM tbl_mine
Run Code Online (Sandbox Code Playgroud)

慢于:

SELECT this_column,that_column FROM tbl_mine
Run Code Online (Sandbox Code Playgroud)

在我的MySQL查询中.任何人都可以根据经验对此说话吗?

mysql query-optimization

1
推荐指数
1
解决办法
200
查看次数

如果表包含使用MySQL的10000个条目,如何优化查询?

当我像这样执行这个查询时,他们需要花费很多执行时间,因为user_fans表包含10000个用户条目.我该如何优化它?

询问

SELECT uf.`user_name`,uf.`user_id`,
@post                := (SELECT COUNT(*) FROM post WHERE user_id = uf.`user_id`) AS post,
@post_comment_likes  := (SELECT COUNT(*) FROM post_comment_likes WHERE user_id = uf.`user_id`) AS post_comment_likes,
@post_comments       := (SELECT COUNT(*) FROM post_comments WHERE user_id = uf.`user_id`) AS post_comments,
@post_likes          := (SELECT COUNT(*) FROM post_likes WHERE user_id = uf.`user_id`) AS post_likes,

(@post+@post_comments) AS `sum_post`,
(@post_likes+@post_comment_likes) AS `sum_like`, 
((@post+@post_comments)*10) AS `post_cal`,      
((@post_likes+@post_comment_likes)*5) AS `like_cal`,
((@post*10)+(@post_comments*10)+(@post_likes*5)+(@post_comment_likes*5)) AS `total`  
FROM  `user_fans` uf  ORDER BY `total` DESC lIMIT 20
Run Code Online (Sandbox Code Playgroud)

mysql sql optimization query-optimization

1
推荐指数
1
解决办法
1991
查看次数

将存储过程输入参数分配给局部变量是否有助于优化查询?

我有一个存储过程,需要5个输入参数.该过程有点复杂,需要大约2分钟才能执行.我正在优化查询.

所以,我的问题是,它是否总是有助于将输入参数分配给局部变量,然后在过程中使用局部变量?

如果是这样,它有什么帮助?

sql t-sql stored-procedures query-optimization sql-server-2008

1
推荐指数
1
解决办法
8084
查看次数

如何检查cfloop和cfquery的执行时间?

我有一些大的查询和循环,这给了我一个excel输出.

我在excel一代的表现上遇到了麻烦.这需要很多时间.所以我想到了优化代码,为此我想知道我的代码块占用了多少时间?请问身体有什么帮助吗?

我只是想知道如何转储cfquery/cfloop/cfoutput的执行时间......?

coldfusion cfquery query-optimization cfloop

1
推荐指数
1
解决办法
1554
查看次数

text或blob字段是否会减慢对表的访问速度

我有表包含文本和blob字段和其他一些,我想知道如果使用这些类型的数据会减慢对表的访问速度

CREATE TABLE post 
(
    id INT(11),
    person_id INT(11) ,
    title VARCHAR(120) ,
    date DATETIME , 
    content TEXT,
    image BLOB ,
);
Run Code Online (Sandbox Code Playgroud)

假设我有超过100,000个帖子,我想做一些查询

SELECT * FROM post WHERE post.date >= ? AND post.person_id = ?
Run Code Online (Sandbox Code Playgroud)

如果表不包含TEXT和BLOB字段,查询会更快

mysql indexing database-design query-optimization

1
推荐指数
1
解决办法
1015
查看次数