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

SQL Избор от две таблици с вътрешно присъединяване и ограничение

Можете да направите това:

SELECT 
  ser.id, 
  ser.name, 
  s.status, 
  s.timestamp 
FROM Service ser 
INNER JOIN status as s ON s.service_id = ser.id
INNER JOIN
(
   SELECT
     service_id, 
     MAX(timestamp) AS MaxDate
   FROM status 
   GROUP BY service_id
) AS a  ON a.service_id = s.service_id 
       AND a.MaxDate = s.timestamp;

Обединяването с подзаявката:

SELECT
  service_id, 
  MAX(timestamp) AS MaxDate
FROM status 
GROUP BY service_id

Ще премахне всички състояния, освен този с най-новата дата.



  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 към Galera Cluster с помощта на Ansible

  2. Какво е MySQL:Общ преглед

  3. Поръчайте MySQL таблица по две колони

  4. Как да заявя колона JSON в MySQL

  5. Как да намеря най-голямата таблица в MySQL база данни?