Sql server Sql Server中出现简单选择脚本错误
下面是两个脚本 挑选* 选择计数* 第一个给出错误,但第二个不给出错误 下面是sql server给出的错误 Msg 263,16级,状态1,第1行 必须指定要从中选择的表 你能告诉我原因吗 注意:未指定表名 提前感谢。选择*不是一个完整的查询 应该是Sql server Sql Server中出现简单选择脚本错误,sql-server,Sql Server,下面是两个脚本 挑选* 选择计数* 第一个给出错误,但第二个不给出错误 下面是sql server给出的错误 Msg 263,16级,状态1,第1行 必须指定要从中选择的表 你能告诉我原因吗 注意:未指定表名 提前感谢。选择*不是一个完整的查询 应该是 SELECT * from MyTableName SELECT*不是完整的查询 应该是 SELECT * from MyTableName select count*之所以有效,是因为它默认为主数据库 如其他答案所述,您必须指定一个表名。选
SELECT * from MyTableName
SELECT*不是完整的查询
应该是
SELECT * from MyTableName
select count*之所以有效,是因为它默认为主数据库
如其他答案所述,您必须指定一个表名。选择计数*有效的原因是它默认为主数据库
正如其他答案中所述,您必须指定一个表名。在第一个查询中,要使其完整,您需要定义from子句
在第二个查询中,如果未指定要从中选择的表,则单个select将只返回一行,因此count*将返回1
FROM子句是可选的,它一直以这种方式工作。因此,您可以执行SELECT 1或SELECT@val等操作,而无需表格
在其他数据库系统中,有一个名为DUAL的虚拟表,其中有一行用于执行SELECT语句,如SELECT 1 FROM DUAL 在第一个查询中,要使其完整,需要定义from子句
在第二个查询中,如果未指定要从中选择的表,则单个select将只返回一行,因此count*将返回1
FROM子句是可选的,它一直以这种方式工作。因此,您可以执行SELECT 1或SELECT@val等操作,而无需表格
在其他数据库系统中,有一个名为DUAL的虚拟表,其中有一行用于执行SELECT语句,如SELECT 1 FROM DUAL select count*之所以有效,是因为count是一个函数并返回一个标量值,因为from子句是可选的,所以它将成功执行,*既不是函数也不是标量值,这就是它无法执行的原因
从
SELECT语句中子句的顺序很重要。任何一个可选子句都可以省略,但在使用可选子句时,它们必须以适当的顺序出现
因此,select后跟任何标量值都将执行,即select 1,select'*'select count*之所以有效,是因为count是一个函数并返回标量值,因为from子句是可选的,它将成功执行,而*既不是函数,也不是标量值,这就是它无法执行的原因
从
SELECT语句中子句的顺序很重要。任何一个可选子句都可以省略,但在使用可选子句时,它们必须以适当的顺序出现
因此,将执行select,后跟任何标量值,即select 1,select'*'您能解释一下吗?如果没有任何表格,count*将如何工作?你能再解释一下吗?如果没有任何表格,count*将如何工作?
[ WITH <common_table_expression>]
SELECT select_list [ INTO new_table ]
[ FROM table_source ] [ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]