[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: MySQL запрос
Страницы: 1, 2
refined
Помогите пожалуйста построить запрос который записывает в массив, к примеру $result , предпоследнюю запись из таблице comments. В таблице храниться id, name, body

заранее спасибо
linker
SELECT ... FROM .... WHERE ... ORDER BY ... DESC LIMIT 1


_____________
Gear Framework
Gear Framework на Github
refined
первый с начала, если записано в обратном порядке? ясно, спасибо
refined
а как теперь можно этот, как я понимаю массив, присвоить переменной в php? Мне просто надо сравнить эту переменную с другой строковой переменной$data['body'] (ее значение вводиться в textarea body)
refined
если кому интересно то я сделал так if($data['body'] == mysql_result(mysql_query("SELECT body FROM comments ORDER BY id DESC LIMIT 1"),0))
возможно ли проще?
ИНСИ
refined лень писать нормальный код ?! smile.gif
Игорь_Vasinsky
если ты по id хочешь выдёргивать - то мне кажеться -не выдет... т.к. :

даже если ты захочешь подсчиать клво строк в БД (что определить последний id) или просто вытащишь этот id из ячейки -

то предпоследняя запись в таблице - е обязательно равна педпоследнему id потомучто если удалить какую нибудь строчку из таблы - id не переписывется.

Следовательно - правильно описали те нверху - надо таблицу оставить на уши (ORDER BY `id` DESC) - и взять второй результат


пофилосовствовал я.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
refined
welbox2 Не лень мне писать нормальный код, я просто не умею, как что-то надо лезу в интернет, если не нахожу то приходиться вот так извращаться.

Игорь_Vasinsky Так я вроде всё так и сделал, и у меня всё верно работает.

Игорь_Vasinsky
покажи стуктуру БД
покажи SQL запрос БД

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
ИНСИ
Цитата
welbox2 Не лень мне писать нормальный код, я просто не умею, как что-то надо лезу в интернет, если не нахожу то приходиться вот так извращаться.

тогда понятно :) сам когда-то также писал :) бывало и хуже.... :)
Вот, кусок небольшой, постарался прокомментировать:
$rows = mysql_query(" SELECT * FROM `comments` ORDER BY `id` DESC LIMIT 1 ");  // запрашиваем из БД коммент
if(mysql_num_rows($rows) > 0) { // проверям, получили ли мы хотя бы 1 запись :)
while($rows = mysql_fetch_assoc($rows)) { // циклом проходим вест результат + помещяем в массив $data - данные, которые мы получили от запроса
echo $rows['id']; // выводим id записи. Ну тут наверное сам понимаешь, вместо id можно вытащить name и т.д.....
}
}
else echo 'В БД нет комментариев!';
kirik
welbox2
А зачем там цикл, если заведомо известно, что запись будет всего одна (или вообще не будет)?
ИНСИ
kirik я знал, что кто-нибудь меня просит про это smile.gif....

Я избавил автора от проблемы, из за которой он потом создаст новую тему: Что делать, если мне надо вытащить 10 комментариев? smile.gif

Цитата
или вообще не будет

поправил.
collapse
welbox2 нормальный код пишется так:


$rows = mysql_query('SELECT * FROM `comments` ORDER BY `id` DESC LIMIT 1');
// запрашиваем из БД коммент, одинарные кавычки не дают паресеру обрабатывать строку лишний раз
// кроме того - SELECT * - явно темная лошадка в запросе, да и СУБД надо вспоминать че за строки в таблице

if ($row = mysql_fetch_assoc($rows)) {
echo $rows['id'];
} else echo 'В БД нет комментариев!';
inpost
collapse
Раз начинаем, то давайте уже до конца писать красиво:
if ($row = mysql_fetch_assoc($rows)) 
echo $rows['id'];
else
echo 'В БД нет комментариев!';


_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
collapse
inpost
Не спорю smile.gif Копи паст меня сдал smile.gif Первый день на форуме - тут не принято так поправлять?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.