SQL主键Php和查询速度

时间:2012-11-23 14:42:53

标签: php sql primary-key

我有一个简单的问题,但我无法在互联网上找到答案。 我有一个名为result的SQL表,只有2个字段:名称和内容。 由于每个名称都是唯一的,我将主键放在字段名称上。

我想在Php中做的是指定一个名称并获取其内容:

$req = $bdd->prepare('SELECT contents FROM result WHERE name = :name');
$req->execute(array('name' => $inputName));
$donnees = $req->fetch();
$result=$donnees['contents'];
echo $result;

当然这个代码可行,但我想知道的是我必须在我的PHP代码上指定名称是主键还是已经知道它,因此我的查询的执行速度达到了最大值。 / p>

谢谢。

2 个答案:

答案 0 :(得分:0)

处理数据库的主键(或任何键)不是php的工作。 您的执行速度将是最大值,因为主键意味着将创建此列的索引。

答案 1 :(得分:0)

不要过早优化。

首先,您需要一个真实世界的用例,然后您需要对其进行分析/基准测试以找到瓶颈,然后然后考虑优化内容和方法。

可以使用EXPLAIN SELECT ...进行性能分析sql查询 - 但如果名称已经编入索引,那么对于简单查询来说,这不是必需的。

如果您想将此结果表用作缓存 - 这可能不是最佳解决方案。考虑使用内存键值存储,如memcache。