|
|
|
| Здравствуйте.
Я задавал этот вопрос, но сейчас уже конкретно знаю условия. Есть таблица с полем:
выводиться будут примерно по 40 записей.
(Кстати, всего около 200 000 записей и для постраничной навигации пользуюсь COUNT(*), правильно ли? Или лучше SELECT id FROM table и подсчитать их $c=mysql_num_rows($res))
так вот. Как лучше?
или
<?php
$res=mysql_query("SELECT SUBSTR(description,0,70) as d FROM table LIMIT 0,40");
while($x=mysql_fetch_assoc($res))
{
echo $x['d'].'<br>';
}
?>
|
или
<?php
$res=mysql_query("SELECT description FROM table LIMIT 0,40");
while($x=mysql_fetch_assoc($res))
{
echo substr($x['description'],0,70).'<br>';
}
?>
|
(В запросе будет выборка не только поля description) | |
|
|
|
|
|
|
|
для: stas1987
(23.07.2007 в 00:07)
| | >(Кстати, всего около 200 000 записей и для постраничной навигации пользуюсь COUNT(*), правильно ли?
правильно.
>Или лучше SELECT id FROM table и подсчитать их $c=mysql_num_rows($res))
хуже.
>>$res=mysql_query("SELECT SUBSTR(description,0,70) as d FROM table LIMIT 0,40");
такой функции нет. Есть функции SUBSTRING и LEFT - обе с дргими параметрами, и надо применять одну из них, например
SELECT LEFT(description,70) as d FROM table LIMIT 0,40
|
>echo substr($x['description'],0,70).'<br>';
хуже.
>(В запросе будет выборка не только поля description)
несущественно. | |
|
|
|
|
|
|
|
для: Trianon
(23.07.2007 в 10:38)
| | Спасибо.
Кстати, насчет SUBSTR - то это алиас SUBSTRING (по крайней мере по мануалу в mysql 5).
Я так понял, что лучше обрезать строку при выборке, нежели средствами php. | |
|
|
|
|
|
|
|
для: stas1987
(23.07.2007 в 19:35)
| | >Кстати, насчет SUBSTR - то это алиас SUBSTRING (по крайней мере по мануалу в mysql 5).
Даже если и так, я бы не советовал им пользоваться.
1) Получится несовместимость с предыдущими версиями.
2) семантика второго параметра этой функции отличает её от substr php
>Я так понял, что лучше обрезать строку при выборке, нежели средствами php.
безусловно.
Зачем тянуть лишний трафик с Sql-сервера в php? | |
|
|
|