如何将复杂的mysql查询更改为mysql视图

如何将复杂的mysql查询更改为mysql视图,mysql,sql,view,Mysql,Sql,View,我是一个mysql查询的新手,我想问一下,是否有人能帮我解决我的问题。我有一个(对我来说)复杂的sql。我想把它变成一个视图 SELECT username, user_id, sum(result_points) AS count_points, count(result_points) AS activity_done, ( ( SELECT count(*) FROM `activity` WHERE

我是一个mysql查询的新手,我想问一下,是否有人能帮我解决我的问题。我有一个(对我来说)复杂的sql。我想把它变成一个视图

SELECT 
    username, 
    user_id,
    sum(result_points) AS count_points, 
    count(result_points) AS activity_done, 
    (
        (
            SELECT count(*) FROM `activity` WHERE periode_id = ''
        ) + 
        (
            SELECT
                IFNULL(sum(acs.result_points), 0) 
            FROM 
                user_activity ua 
            WHERE 
                periode_id = '' 
            AND ua.user_id = user_activity.user_id
            AND ua.result_points IS NOT NULL
        )
    ) AS total
    FROM 
        user_activity 
        LEFT JOIN users ON users.id = user_activity.user_id 
    WHERE 
        periode_id = '' 
    and user_id > 0 
    GROUP BY user_id 
    ORDER BY total DESC

有没有办法去掉“where”语句,这样我仍然可以将其更改为view?

如果查询正确,请创建类似view的视图

Create View data as
SELECT 
    username, 
    user_id,
    sum(result_points) AS count_points, 
    count(result_points) AS activity_done, 
    (
        (
            SELECT count(*) FROM `activity` WHERE periode_id = ''
        ) + 
        (
            SELECT
                IFNULL(sum(acs.result_points), 0) 
            FROM 
                user_activity ua 
            WHERE 
                periode_id = '' 
            AND ua.user_id = user_activity.user_id
            AND ua.result_points IS NOT NULL
        )
    ) AS total
    FROM 
        user_activity 
        LEFT JOIN users ON users.id = user_activity.user_id 
    WHERE 
        periode_id = '' 
    and user_id > 0 
    GROUP BY user_id 
    ORDER BY total DESC
从视图中删除where子句并在视图中添加where子句,如

select * from data where user_id > 0 

使用此查询定义视图时,您是否遇到任何错误?谢谢您的回答,很抱歉,我发布了一个不明确的sql。因为问题是,我还希望periode_id也在where子句中。不仅是用户id。是否可能?将周期id添加为列,并在视图中作为用户id进行筛选