Запрос по выдаче последних 5 записей с первыми 5 предложениями

new_russian_man

Как сформировать запрос к БД, чтобы он выдал только последние 5 записей и в каждой записи было по первых 5 предложений? Структура БД

CREATE TABLE news (
  id int(11) NOT NULL AUTO_INCREMENT,
  title varchar(20) DEFAULT NULL,
  nazv varchar(27) DEFAULT NULL,
  text text,
  PRIMARY KEY (id),
  UNIQUE KEY id (id)
) ENGINE=MyISAM AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;
1 ответ

new_russian_man

SELECT * FROM news ORDER BY id DESC LIMIT 5  *//выведет последнии 5 записей*

А вот по 5 предложений я не знаю, как правильно, я делал у себя деревянным способом: просто вывести 300 знаков с поля text. Допустим, выполнил запрос:

$sql = "SELECT * FROM news ORDER BY id DESC LIMIT 5";
 $resultat = mysql_query($sql) or die(mysql_error());;
 $s = mysql_fetch_array($res);
 $rest = substr($s[text], 0, 300);

Теперь $rest показывает только первые 300 знаков. Ну можете там, когда будете выводить, добавить еще многоточие, например:

//выводим текст
<бла-бла-бла>".$rest." ... <бла-бла-бла>

licensed under cc by-sa 3.0 with attribution.