mysql - 如何从表中选择最新行

标签 mysql select sql-order-by

我有表1

table1
id          int
myvalue     text
datevalue   datetime ('2016-02-23 19:25:02')

和表2

table2
id          int
myvalue     text
datevalue   datetime ('2016-02-23 19:27:58')

我想为 table1 和 table2 选择最近的 5 行

我猜这是一个 ORDER BY datevalue DESC LIMIT 5 ...

但是我尝试了很多方法都没有成功!

谢谢:)

最佳答案

对于两个表一起:

SELECT * FROM (
    SELECT * FROM Table1
    UNION ALL
    SELECT * FROM Table2)
ORDER BY datevalue desc LIMIT 5

对于每个表分别:

  SELECT * FROM Table1
   ORDER BY datevalue desc LIMIT 5
  UNION ALL
  SELECT * FROM Table2
   ORDER BY datevalue desc LIMIT 5

关于mysql - 如何从表中选择最新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35628952/

相关文章:

mysql - 在 SQL 语句中进行数学运算?

mysql - 如何计算一列中不同数据的总值(value)

MySQL if/条件查询?

mysql - 使用条件按两列排序?

sql - Oracle SQL : Order by with GROUP BY ROLLUP

sql-server-2008 - 按日期排序无法正常工作

mysql - InnoDB 从站不更新

sql - 检索最后(最新)不同的最高值

sql - 检查表1中的字段组合是否存在于另一个表2中(SQL)

mysql - 在主键上调用 SELECT * 与 SQL 中的属性