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

MySQL оператор, за да изберете последния запис на конкретна колона

  • В получена таблица вземете максималната стойност на версията за всеки type_id
  • Присъединете се обратно към основната таблица, за да получите съответния ред.

Опитайте следното:

SELECT e.* FROM example1 AS e JOIN ( SELECT type_id, MAX(version) AS maximum_version FROM example1 WHERE class_id =10 GROUP BY type_id ) AS dt ON dt.type_id =e.type_id И dt.maximum_version =e.version WHERE e.class_id =10 

Резултат

<предварителен код>| ID | версия | текст | class_id | type_id || --- | ------- | ----- | -------- | ------- || 1 | 1 | текст1 | 10 | 1 || 2 | 1 | текст2 | 10 | 2 || 4 | 1 | тест4 | 10 | 4 || 9 | 3 | последно | 10 | 3 || 11 | 3 | rrrr | 10 | 5 |

Преглед на DB Fiddle




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. какво е по-бързо, count(*) или count(table_field_name) в mysql?

  2. Грешка в MySql:1364 Поле „display_name“ няма стойност по подразбиране

  3. Не мога да добавя колона от рамка с данни на pandas към mysql в python

  4. Алтернатива за django.db.close_connection()

  5. Формат на реда в MySQL:Разлика между фиксиран и динамичен?