|
|
|
| Доброго времени суток!
Скажите пожалуйста, если я делаю выбор из базы данных, выбор только одной записи, нужно ли делать в конце запроса Limit 1
“ select ………. LIMIT 1” | |
|
|
|
|
|
|
|
для: Diablo_
(31.05.2007 в 16:08)
| | Не помешает. Даже если никогда не ошибаетесь - это здорово улучшит читабельность кода - читатель будет точно знать, что вы всегда ожидаете тут только одну запись. | |
|
|
|
|
|
|
|
для: cheops
(31.05.2007 в 16:21)
| | А это ускорит работу базы? | |
|
|
|
|
|
|
|
для: Diablo_
(31.05.2007 в 16:33)
| | Думаю наврядли | |
|
|
|
|
|
|
|
для: Faraon
(31.05.2007 в 16:36)
| | а что такое full joen и зачем он нужен в запросе? | |
|
|
|
|
|
|
|
для: Faraon
(31.05.2007 в 16:36)
| | Ускорит, но эффект будет заметен на относительно больших таблицах.
На оф.сайте MySQL об этом очень ясно написано - http://dev.mysql.com/doc/refman/5.0/en/limit-optimization.html | |
|
|
|
|
|
|
|
для: Diablo_
(31.05.2007 в 16:08)
| | Я этого не делаю никогда.
Больше скажу. Я абсолютно убежден в том, что кроме постраничной навигации, у конструкции LIMIT нет других применений. | |
|
|
|
|
|
|
|
для: Trianon
(31.05.2007 в 19:41)
| | top100:) | |
|
|
|
|
|
|
|
для: Loki
(01.06.2007 в 11:07)
| | если есть top 100 то есть и second 100 и third 100. Чистая постраничка. | |
|
|
|
|
|
|
|
для: Trianon
(31.05.2007 в 19:41)
| | кроме постраничной навигации, у конструкции LIMIT нет других применений
<?php
$sql = mysql_query("SELECT `field` FROM `tbl` ORDER BY RAND() LIMIT 1;");
if(mysql_num_rows($sql) == 1)
{
echo(mysql_result($sql, 0));
}
?>
|
| |
|
|
|
|
|
|
|
для: Unkind
(01.06.2007 в 12:19)
| | И при этом гарантируется недетерминированное поведение алгоритма. :)
Пожалуй единственное практическое исключение :) | |
|
|
|