Mysql
 sql >> база данни >  >> RDS >> Mysql

групиране по и подреждане по в mysql заявка

Можете да постигнете това с помощта на MAX групова функция. Изчистих малко заявката, но по същество това трябва да запази същата логика, която сте имали преди, като същевременно е малко по-оптимизирано. Просто променете a.date_time за каквото и да е полето за дата и час във вашата таблица.

SELECT
    a.visitorid,
    MAX( a.date_time ) AS last_visit_date_time,
    b.onlinestatus,
    b.username,
    b.age,

FROM tbl_visitprofile a

INNER JOIN tbl_user b
    ON b.id = a.visitorid
    AND b.STATUS != '2'

LEFT JOIN tbl_pauseusers p
    ON p.user_id = a.visitorid

WHERE a.visitmemberid = '10'
    AND a.blockstatus = '0'
    AND p.user_id IS NULL

GROUP BY a.visitorid
ORDER BY last_visit_date_time DESC
LIMIT 0 , 12;

Това ще подреди записите по дата/час на последното посещение и ще върне последните 12.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да слея две MySQL таблици?

  2. Primefaces 5.0 диаграми - как да създавате динамично модели на диаграми и серии изцяло от стойности на базата данни

  3. MySQL и UTF-8

  4. varchar(255) v tinyblob v tinytext

  5. MySQL избира вчерашната дата