Php 带条件的MySQL联合查询
我有两个专栏,节日和活动,比如 节日Php 带条件的MySQL联合查询,php,mysql,mysql-management,Php,Mysql,Mysql Management,我有两个专栏,节日和活动,比如 节日 id | name | modified_date ----------------------------------- 12 | fest 1 | 2012-03-14 17:45:40 13 | fest 2 | 2012-03-14 17:45:40 15 | fest 4 | 2012-03-14 17:45:40 11 | fest 5 | 2012-03-14 17:45:40 事
id | name | modified_date
-----------------------------------
12 | fest 1 | 2012-03-14 17:45:40
13 | fest 2 | 2012-03-14 17:45:40
15 | fest 4 | 2012-03-14 17:45:40
11 | fest 5 | 2012-03-14 17:45:40
事件
id | name | modified_date
-----------------------------------
14 | envt 1 | 2012-03-14 17:45:40
15 | envt 2 | 2012-03-14 17:45:40
16 | envt 4 | 2012-03-14 17:45:40
17 | envt 5 | 2012-03-14 17:45:40
我的应用程序中有一个页面显示最近的更新,单击每个列表,它将重定向到相应的事件或节日
对此,我有以下疑问
select id,name,modified_date from events
UNION
select id,name,modified_date from festival
order by modified_date desc
这将返回一个类似于
id | name | modified_date
-------------------------------------
12 | fest 1 | 2012-03-14 17:45:40
13 | fest 2 | 2012-03-14 17:45:40
--------------------------------------------
但我的问题是,我还需要再写一列,以便理解这一行代表一个事件或节日。。类似于
id | name | modified_date | type
---------------------------------------------------
12 | fest 1 | 2012-03-14 17:45:40 | festival
15 | evnt 2 | 2012-03-14 17:45:40 | event
请帮忙
提前感谢这应该可以解决问题
select id, name, modified_date, 'event' as type
from events
UNION
select id, name, modified_date, 'festival' as type
from festival
order by modified_date desc
select id,name,modified_date, 'event' AS type from events
UNION
select id,name,modified_date, 'festival' AS type from festival order by modified_date desc
您可能希望使用UNION ALL而不是UNION,因为如果您知道结果集不重叠(UNION要求RDBMS在内部执行不同的操作),通常会更快。@Phil您知道他们怎么说。。。要想赢,你必须聪明、快速或作弊。因为我还没有找到作弊的好方法,所以我只关注快速。