关于sql查询

时间:2013-02-05 06:55:53

标签: php mysql sql

我遇到SQL问题,我解释一下:

我有2张桌子

  

announcements_job

     

announcements_education

下面你可以看到表的预览

announcements_education announcements_education

announcements_job announcements_job

我认为我的数据库结构不是很好......但是要迟到了! (忘了我的数据类型,实际上是废话),我是个坏人吗?

那么:你如何获取最后5条记录ORDER BY insert_db_date(在这两个表之间)?

- >如果不可能,你有另一个解决方案吗?

提前致谢;)

1 个答案:

答案 0 :(得分:1)

在选择之前,您需要在列中应用订单。也就是说,假设您还没有添加最新的条目。但最好是安全而不是抱歉!

SELECT * FROM announcements_education ORDER BY DESC insert_db_date LIMIT 5;

分别为:

SELECT * FROM announcements_job ORDER BY DESC insert_db_date LIMIT 5;

您必须指定按降序排序,因为默认ORDER BY将按升序排序。 LIMIT语句将确保您只返回前五个条目。由于您的表从最新的输入数据到最新的排序,因此只显示最近的五个。

<强>更新

我有点误读你的问题。如果你想在两个表中获得前5名,下面的代码就是你想要的。

(SELECT * FROM announcements_education ORDER BY DESC insert_db_date)
UNION ALL
(SELECT * FROM announcements_job ORDER BY DESC insert_db_date)
LIMIT 5

让我知道它有效!