使用PHP和MySQL
我从facebook上抓了一大堆facebook用户ID.
现在我想在我的应用程序中找到该数组的相应用户名.
显然,在我的应用程序中,用户表包含唯一的用户名和唯一的fb_uid值.
我对编程的基本理解使我有两种方式:
1)使用循环并运行fb_uid数组并逐个查找用户名.
要么
2)创建一个怪物查询,例如从用户中选择distinct(用户名),其中fb_uid = value1或fb_uid = value2 ...
那么有更好的出路吗?
谢谢.
有没有更快的方法来执行这个最简单的服务器负载查询?我不认为我曾尝试过除此方法之外的任何其他方法:
$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)
有什么方法可以改善吗?
嘿伙计们,如果这个问题太简单,请原谅我.我基本上想要计算数据库中男性和女性的数量.所以我知道两个简单的查询将实现这一点,例如:
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 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.
真的STATISTICS是什么?并且其中在其中senarios查询优化使用?
我想弄清楚是否:
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查询中.任何人都可以根据经验对此说话吗?
当我像这样执行这个查询时,他们需要花费很多执行时间,因为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) 我有一个存储过程,需要5个输入参数.该过程有点复杂,需要大约2分钟才能执行.我正在优化查询.
所以,我的问题是,它是否总是有助于将输入参数分配给局部变量,然后在过程中使用局部变量?
如果是这样,它有什么帮助?
sql t-sql stored-procedures query-optimization sql-server-2008
我有一些大的查询和循环,这给了我一个excel输出.
我在excel一代的表现上遇到了麻烦.这需要很多时间.所以我想到了优化代码,为此我想知道我的代码块占用了多少时间?请问身体有什么帮助吗?
我只是想知道如何转储cfquery/cfloop/cfoutput的执行时间......?
我有表包含文本和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字段,查询会更快
sql ×6
mysql ×5
t-sql ×2
cfloop ×1
cfquery ×1
coldfusion ×1
count ×1
database ×1
indexing ×1
optimization ×1
php ×1
sql-server ×1