在Select语句中调用时,列返回错误,但在使用*时返回值

时间:2019-04-05 13:30:19

标签: tsql select

除非我使用SELECT * FROM table

,否则为表列检索的值不正确。

我确定这是基本的东西,只是我没有点击。

当对表运行通配符*时,将返回“用户”列的准确值,但是当在select语句中调用该列时,我的SQL Server用户名将替换该列中的值。如果尝试使用表别名调用SELECT语句中的列,则会收到“关键字'User'附近的语法不正确。”

用户列为nvarchar(12),操作列为nvarchar(50)

此查询在“用户”列中返回准确的数据:

SELECT *
FROM TransHistory as th

此查询在“用户”列中返回我的SQL Server用户名,而不是实际值:

SELECT Action, User
FROM TransHistory

此查询使用表别名,导致“关键字'User'附近语法不正确”。

SELECT th.Action, th.User
FROM TransHistory as th

我希望在所有3个查询中都能从表中获得准确的用户ID。

0 个答案:

没有答案