Sql 前1名及;Top 1 1(Expr1000 1)典型输出

Sql 前1名及;Top 1 1(Expr1000 1)典型输出,sql,Sql,这为我提供了第一行的所有客户详细信息 SELECT TOP 1 * FROM Customers; 我收到了订单号 SELECT TOP 1 1 FROM Customers; 但是我真的不理解上面的输出,我搜索了它,但没有得到清楚的理解。如果您的第一个查询*意味着显示所有字段 但是: 等于: SELECT TOP 1 1 FROM Customers; 因此,您创建了一个常量字段,客户中的每一行都会得到1,但是如果您的第一个查询*平均显示所有字段,则TOP 1将只过滤到第一个 但是:

这为我提供了第一行的所有客户详细信息

SELECT TOP 1 * FROM Customers;

我收到了订单号

SELECT TOP 1 1 FROM Customers;

但是我真的不理解上面的输出,我搜索了它,但没有得到清楚的理解。

如果您的第一个查询
*
意味着显示所有字段

但是:

等于:

SELECT TOP 1 1 FROM Customers;

因此,您创建了一个常量字段,客户中的每一行都会得到1,但是如果您的第一个查询
*
平均显示所有字段,则
TOP 1
将只过滤到第一个

但是:

等于:

SELECT TOP 1 1 FROM Customers;
因此,您创建一个常量字段,客户中的每一行都会得到1,但是
TOP 1
将只过滤到第一个第二个“1”不被视为列,它只是一个常量。因此,在这个查询中,您要求用一列常量“1”写下一行(
TOP 1
)。如果你写这样的东西,同样的事情也会发生:

SELECT TOP 1   
       1 as myConstantField FROM Customers;
在“valueone”、“2”、“3”列中有一行的值为“Hey You”、“1”,那么第一行的customerid不被视为列,它只是一个常量。因此,在这个查询中,您要求用一列常量“1”写下一行(
TOP 1
)。如果你写这样的东西,同样的事情也会发生:

SELECT TOP 1   
       1 as myConstantField FROM Customers;
在“valueone”列中,有一行的值为“Hey You”,“1”,“2”,“3”,然后是当您

SELECT TOP 1 'Hey you', 1 as valueone ,2 ,3, customerid
FROM Customers ;
SELECT 1
它将只显示1的一行。当你

SELECT 1
它将提供客户中的行数。所以当你

SELECT 1 FROM Customers
它只会给你1的第一行,就像你做了一样

SELECT TOP 1 1 FROM Customers
当你

SELECT TOP 1 'Hey you', 1 as valueone ,2 ,3, customerid
FROM Customers ;
SELECT 1
它将只显示1的一行。当你

SELECT 1
它将提供客户中的行数。所以当你

SELECT 1 FROM Customers
它只会给你1的第一行,就像你做了一样

SELECT TOP 1 1 FROM Customers

请不要标记多个DBMS,只标记您真正使用的产品。您使用的产品是什么?请不要标记多个DBMS,仅标记您真正使用的产品。您使用的是哪种产品?毫无疑问,仅举一个小例子即可完美。非常感谢@thetachi559。毫无疑问,仅举一个小例子即可完美。非常感谢@thetachi559。