Mysql 从视图中计算不同的记录

Mysql 从视图中计算不同的记录,mysql,sql,Mysql,Sql,我想我知道如何从表中计算不同的记录: SELECT COUNT(DISTINCT device_guid) FROM 002_device_guid_group_and_device_data; 但是002_设备_guid_组_和_设备_数据是一个视图而不是一个表,正在返回: ERROR 1146 (42S02): Table 'nimevents.002_device_guid_group_and_device_data' doesn't exist 针对视图运行是否有不同的语法 以下评

我想我知道如何从表中计算不同的记录:

SELECT COUNT(DISTINCT device_guid) 
FROM 002_device_guid_group_and_device_data;
但是002_设备_guid_组_和_设备_数据是一个视图而不是一个表,正在返回:

ERROR 1146 (42S02): Table 'nimevents.002_device_guid_group_and_device_data' doesn't exist
针对视图运行是否有不同的语法

以下评论

视图必须存在:

DESCRIBE 002_guid_group_and_device_data;
+-----------------+--------------+------+-----+---------+-------+
| Field           | Type         | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+-------+
| device_guid     | char(37)     | YES  |     | NULL    |       |
| etl_create_date | datetime     | YES  |     | NULL    |       |
| dwell_minutes   | int(11)      | YES  |     | NULL    |       |
| device_brand    | varchar(128) | YES  |     | NULL    |       |
| device_product  | varchar(128) | YES  |     | NULL    |       |
| device_os       | varchar(128) | YES  |     | NULL    |       |
+-----------------+--------------+------+-----+---------+-------+

看起来该视图不存在。以数字开头的名称在SQL中是非法的,您可能需要引用它
“002_device_guid_group_和_device_data”
不确定MySQL是否接受这一点,即使没有将quoteCreate view device_guid_count作为Tablename中的select count(DISTINCT device_guid)cnt;您使用的是哪个版本?mysql中曾经有一个关于视图计数的bug。更多信息:以数字开头的@a_horse_和_no_名字并不违法,但我同意它们应该是违法的@草莓:它们符合SQL标准