【问题标题】:Merging views to act as a single table with united records合并视图以充当具有联合记录的单个表
【发布时间】:2012-03-01 23:42:21
【问题描述】:

我有几张桌子是这样布置的:

+------------------------------------+
+ user_id | action_id | action_level +
+------------------------------------+
+ id_user | action_id | action_level +
+------------------------------------+

我如何创建一个 MySQL 视图(或者也许有人可以提出更好的选择),这些视图将充当单个表:

+------------------------------------+
+ user_id | action_id | action_level +
+------------------------------------+

而不是加入它,这使它显示如下:

+---------------------------------------------------------------------------------+
+ user_id | id_user | a_action_id | b_action_id | a_action_level | b_action_level +
+---------------------------------------------------------------------------------+

这样当我对表格进行搜索时,我可以像这样简单地搜索:

SELECT * FROM my_view WHERE action_id = 2;

【问题讨论】:

    标签: mysql views mysql5 sql-view


    【解决方案1】:

    使用union

    CREATE VIEW `user_actions` AS
    SELECT a.user_id, a.action_id, a.action_level
    UNION ALL
    SELECT b.id_user AS user_id, b.action_id, b.action_level
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-30
      • 1970-01-01
      • 1970-01-01
      • 2021-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多