php - 如何在Mysql中对两个不同的表进行组合和排序

标签 php mysql sql database sorting

我有表A:

id username firstname event_date
1   Ben      lori     2014-01-27
2   Ben      lori     2014-01-04
3   Mary     john     2014-01-28

我有表B:

   id username event_date
   1   Ben     2014-01-23
   2   Nicole  2014-01-26

我希望结果是这样的:是否有任何解决方案可以让我像一张表一样根据 event_date 对其进行组合和排序,如下所示:

  2   Ben      lori     2014-01-04     
            1   Ben     2014-01-23
            2   Nicole  2014-01-26
  1   Ben      lori     2014-01-27
  3   Mary     john     2014-01-28

这样我就可以使用 while 循环或 mysql_fetch_assoc 之类的东西来显示内容

最佳答案

基本上,您需要union all:

select id, username, firstname, event_date
from ((select id, username, firstname, event_date
       from tablea
      ) union all
      (select id, username, NULL as firstname, event_date
       from tablea
      )
     ) t
order by event_date;

关于php - 如何在Mysql中对两个不同的表进行组合和排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21493530/

相关文章:

mysql - 错误“1038 Out of sort memory, consider increasing sort buffer size

sql - 单个索引与多个字段索引

php - mysql子查询计数位置和分组依据

php - 为已登录的 FB 用户强制执行新的权限请求

php - Foreach 循环未在 PHP 中执行

mysql - 选择一对多表结构中的一对一关系

sql - 如何在 SQL Server 2005 中将列值用作用于 xml 的 xml 元素名称?

mysql - 从一个表中检索数据,同时比较另一个表中的值

php - 如果购物车中该产品的数量超过 10 件,请禁用产品添加到购物车按钮

php - mySQL 选择下载次数最多的用户