我写了一个视图1包含视图2,执行 select count(1) as 别名 from 视图1;报错:
[Err] 1356 - View '视图1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them;
我用的 是root查询的 ,root开放了所有权限。
视图1:
SELECT a.pkid PKID,a.TEMPLATETILE TEMPLATETILE,a.TEMPLATETYPENAME TEMPLATETYPENAME,IFNULL(b.c,0) COUNTS
FROM templatemaininfo a
LEFT JOIN 视图2 b
ON a.PKID=b.reportmodelid
WHERE a.IS_DEL=0 ORDER BY counts DESC,TEMPLATETYPENAME;
视图2:SELECT reportmodelid,count(1) as c
from task_collectslave
where isneedwarning=1 and DATE_ADD(endtime,INTERVAL 7 DAY)>=SYSDATE() GROUP BY reportmodelid;
执行select count(1) as counts from 视图1;就能顺利执行。
求大神解释下。