Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выборка огранниченного кол-ва строк, с конца, после фильтрования

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: никак не поддается моему мозгу.
V2oD2o
Отправлено: 09 Декабря, 2011 - 08:30:02
Post Id


Частый гость


Покинул форум
Сообщений всего: 143
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. $query="SELECT * FROM `table` WHERE `manager`='".$data[0]."'";
  3. $sql=mysql_query($query) or die(mysql_error());
  4. while ($row = mysql_fetch_assoc($sql)) {
  5. //тут вываливем всех по выбранному имени
  6. }
  7.  


я так понимаю num_rows() можно сделать и общее кол-во и найти MAX(id), а вот как подцепить посление 100 записей уже из сделанной выборки?

Однако

(Отредактировано автором: 09 Декабря, 2011 - 08:30:37)

 
 Top
LIME
Отправлено: 09 Декабря, 2011 - 08:56:47
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




PHP:
скопировать код в буфер обмена
  1. $query="SELECT * FROM `table` WHERE `manager`='".$data[0]."' ORDER BY `column` DESC LIMIT 100";
 
 Top
V2oD2o
Отправлено: 09 Декабря, 2011 - 08:58:13
Post Id


Частый гость


Покинул форум
Сообщений всего: 143
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




LIME пишет:
PHP:
скопировать код в буфер обмена
  1. $query="SELECT * FROM `table` WHERE `manager`='".$data[0]."' ORDER BY `column` DESC LIMIT 100";


это будет выбирать первые 100 значений, нет? Не понял

надо с конца, там id например
566
655
879
987

вот надо например получить последние 3 из них..
 
 Top
LIME
Отправлено: 09 Декабря, 2011 - 09:01:26
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




V2oD2o "DESC" в запросе означает сортировку по убыванию
 
 Top
tuareg
Отправлено: 09 Декабря, 2011 - 09:07:40
Post Id


Участник


Покинул форум
Сообщений всего: 1234
Дата рег-ции: Июнь 2010  


Помог: 69 раз(а)




ну как бы 100 последних, но вам сказали сортировать в обратном порядке.
грубо говоря
таблица
id==pole==sortorder
1--текст--1
2--текст--2
3----текст--4
4----текст--5
5----текст--3
6----текст--6
Нужно вытащить три последних записи по полю sortorder
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. SELECT * FROM TABLE
  3. ORDER BY sortorder DECS /*сортируем все записи в порядке убывания 6,5,4*/
  4. LIMIT 3 /*говорим что нам надо только 3 записи*/
  5.  
 
 Top
V2oD2o
Отправлено: 09 Декабря, 2011 - 09:20:51
Post Id


Частый гость


Покинул форум
Сообщений всего: 143
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




все проще чем казалось! Радость

Спасибо! Подмигивание
(Добавление)
V2oD2o пишет:
все проще чем казалось! Радость

Спасибо! Подмигивание



хм, точнее звучало проще.. как до дела добрался возникает следующий вопрос:

PHP:
скопировать код в буфер обмена
  1. $query="SELECT * FROM `table` WHERE `manager`='".$data[0]."' AND `date`='".$data[2]."' ORDER BY `id` DECS LIMIT ".$data[1];
  2.  


пишет:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DECS LIMIT 10' at line 1

число 10 берется через ajax из поля ввода..
 
 Top
LIME
Отправлено: 09 Декабря, 2011 - 10:08:06
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




не DECS a DESC Все ходы записаны
(Добавление)
там очепятка
 
 Top
V2oD2o
Отправлено: 09 Декабря, 2011 - 10:10:17
Post Id


Частый гость


Покинул форум
Сообщений всего: 143
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




LIME пишет:
не DECS a DESC Все ходы записаны
(Добавление)
там очепятка


точняк Хм


Ха-ха
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB