Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 关于SQL视图,我有些困惑_Mysql_Sql_View_Count_Phpmyadmin - Fatal编程技术网

Mysql 关于SQL视图,我有些困惑

Mysql 关于SQL视图,我有些困惑,mysql,sql,view,count,phpmyadmin,Mysql,Sql,View,Count,Phpmyadmin,我有这些桌子: 分行(Bno、街道、地区、城市、Pcode、电话号码、传真号码) 员工(Sno、Fname、Lname、地址、电话号码、职位、性别、出生日期、工资、NIN、Bno) 物业租金(Pno、街道、地区、城市、Pcode、类型、房间、租金、Ono、Sno、Bno) 将创建一个视图BranchStats(Bno、NumStaff、NumProps),用于显示任何分支机构雇用的员工数量和财产句柄数量 CREATE VIEW BranchStats AS SELECT

我有这些桌子:

  • 分行
    (Bno、街道、地区、城市、Pcode、电话号码、传真号码)
  • 员工
    (Sno、Fname、Lname、地址、电话号码、职位、性别、出生日期、工资、NIN、Bno)
  • 物业租金
    (Pno、街道、地区、城市、Pcode、类型、房间、租金、Ono、Sno、Bno)
将创建一个视图
BranchStats
Bno、NumStaff、NumProps
),用于显示任何分支机构雇用的员工数量和财产句柄数量

CREATE VIEW BranchStats
AS 
   SELECT 
       branch.Bno Bno,
       Count (Distinct Staff.Bno) NumStaff,
       Count (Distinct property_for_rent.Sno) NumProps
   FROM 
       branch
   JOIN 
       Staff ON Staff.Bno = branch.Bno
   JOIN 
       property_for_rent ON property_for_rent.Sno = Staff.Sno
   GROUP BY 
       branch.Bno
错误

您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 近'不同的职员。Bno)努姆斯塔夫,计数(不同 第4行的物业(租金.Sno)Num'

我的SQL语句中有错误吗?需要帮助

MySQL(默认情况下)不允许在函数名和开头部分之间留空格。因此,请尝试删除这些空格:

CREATE VIEW BranchStats AS 
   SELECT branch.Bno,
          Count(Distinct Staff.Bno) as NumStaff,
          Count(Distinct property_for_rent.Sno) as NumProps
   FROM branch JOIN 
        Staff
        ON Staff.Bno = branch.Bno JOIN 
        property_for_rent
        ON property_for_rent.Sno = Staff.Sno
   GROUP BY  branch.Bno;
下文对此进行了解释:

[…]解析器使用以下规则 默认情况下,用于区分其名称是否用作 函数调用或作为非表达式上下文中的标识符:

  • 要将名称用作表达式中的函数调用,名称和以下“(“括号”)之间不得有空格 性格

  • 相反,要将函数名用作标识符,它后面不能紧跟括号

函数调用的编写不带空格的要求 名称和括号之间的值仅适用于内置的 具有特殊注意事项的函数。
COUNT
就是这样一个名称


我是一名学生,刚开始学习它是学习pal的第一步…实际实现代码/sql…如果它抛出错误,用谷歌搜索它…如果你仍然找不到它,那么在这里问一下…现在,你有什么错误吗?是的“您的SQL语法有错误;请检查与您的MySQL服务器版本相对应的手册,以了解在第4行“Distinct staff.Bno)NumStaff,Count(Distinct property_for_rent.Sno)Num”附近使用的正确语法“我试图模仿另一个stackoverflow答案中的sql,但失败了什么数据库系统,哪个版本??SQL只是结构化查询语言-一种被许多数据库系统使用的语言,但不是一种数据库产品。。。像这样的特性通常是特定于供应商的,所以我们确实需要知道您使用的是什么数据库系统。。。。(请相应地更新标签)