MYSQL Выберите из таблицы, получите самые новые/последние 10 строк в таблице


Какой самый лучший и простой способ сделать это? В настоящее время мой запрос таков:

  SELECT * 
    FROM chat 
   WHERE (userID = $session AND toID = $friendID) 
      OR (userID = $friendID AND toID = $session) 
ORDER BY id 
   LIMIT 10

Здесь показаны первые 10 строк, но не последние 10.

РЕДАКТИРОВАТЬ: Мне нужны последние 10 строк (Что да, DESC делает это) Однако я хочу, чтобы они возвращались в порядке ВОЗРАСТАНИЯ.

Author: Dylan Cross, 2012-02-24

3 answers

Чтобы изменить порядок (поэтому получите последние 10 вместо первых 10), используйте DESC вместо ASC

РЕДАКТИРОВАТЬ

Основываясь на вашем комментарии:

SELECT * FROM (
  SELECT * 
  FROM chat 
  WHERE (userID = $session AND toID = $friendID) 
    OR (userID = $friendID AND toID = $session)  
  ORDER BY id DESC
  LIMIT 10
) AS `table` ORDER by id ASC
 23
Author: SimonMayer, 2012-02-24 02:08:38

Если вам нужны последние 10, просто измените ASC на DESC

SELECT * 
FROM 
chat 
WHERE 
(userID=$session AND toID=$friendID) 
OR 
(userID=$friendID AND toID=$session) 
ORDER BY id 
DESC
LIMIT 10
 1
Author: romainberger, 2012-02-24 02:01:57
                $con = mysqli_connect("localhost","my_user","my_password","my_db");
                $limit = 10;                
                $query = "SELECT * FROM  $table";
                $resource = mysqli_query($con,$query);
                $total_rows = mysqli_num_rows($resource);
                $start = $total_rows-$limit;
                $query_limit= $query." LIMIT $start,$limit";

Сначала я установил предел

$limit = 10;

Затем

 $total_rows = mysqli_num_rows($resource);

Здесь я взял общее количество затронутых строк.

$start = $total_rows-$limit;

Затем вычитается ограничение из числа строк, чтобы взять начальный номер записи

   $query_limit= $query." LIMIT $start,$limit";

, А затем добавил ограничение к запросу. Для получения дополнительной информации об ограничении смотрите эту ссылку https://www.w3schools.com/php/php_mysql_select_limit.asp

 0
Author: mohitesachin217, 2018-03-15 07:27:51