加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL – 无法使用SET变量创建视图

发布时间:2021-03-08 07:17:26 所属栏目:MySql教程 来源:网络整理
导读:我试图用SET @rank = 0创建一个视图;在里面,但它给了我错误.尝试过不同的东西,但它没有用.谁能指点我正确的方向? CREATE VIEW S1_Bottom_Performer_AHT as (SET @rank=0SELECT @rank := @rank+1 AS '#',ei.SM,ei.TM,es.Month_Date,ei.emp_id,ei.DNAME,ei.ST

我试图用SET @rank = 0创建一个视图;在里面,但它给了我错误.尝试过不同的东西,但它没有用.谁能指点我正确的方向?

CREATE VIEW S1_Bottom_Performer_AHT as (
SET @rank=0
SELECT @rank := @rank+1 AS '#',ei.SM,ei.TM,es.Month_Date,ei.emp_id,ei.DNAME,ei.STATUS,ei.SHIFT,ei.SKILL,ei.HIRE_DATE,ifnull(TIMESTAMPDIFF(MONTH,now()),'-') AS Tenure,ifnull(es.Call_Handled,'-') AS Call_Handled,ifnull(es.AHT,'-') AS AHT
FROM mtl_extended_info ei
LEFT OUTER JOIN
  ( SELECT es.Employee_ID,sum(es.Calls_Handled_Ct) AS Call_Handled,round((sum(es.I_Talk_Time_Sec) + sum(es.Hold_Time_Sec) + sum(es.I_Work_Time_Sec) + sum(es.I_AUX_Out_Time_Sec)) / sum(es.Calls_Handled_Ct)) AS AHT
   FROM cdl_agent_call_voume_gen es
   WHERE es.Month_Date = '2013-09-01'
   GROUP BY es.Employee_ID,es.Month_Date ) es ON es.Employee_ID = ei.emp_id
WHERE es.Month_Date = '2013-09-01'
  AND ei.Visible = 1
  AND ei.SKILL != 'RSD'
GROUP BY ei.emp_id
ORDER BY es.AHT DESC LIMIT 80);

错误信息:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @rank=0
SELECT @rank := @rank+1 AS '#',' at line 2 
最佳答案 我想你不能这样做.

从MYSQL guidelines开始:

A view definition is subject to the following restrictions:

[ deletia ]

The 07001 statement cannot refer to system or user variables.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读