我有两个与UserName
字段有关系的表。根据{{1}}列,我想从UserName
表中获取ID
。这是我的SQL语句:
CarReserve
不幸的是,我收到了这个警告:
不明确的列名“UserName”
这里的任何人都可以告诉我我的陈述有什么问题吗?
答案 0 :(得分:1)
您忘了添加aspnet_users。在where子句中的用户名之前。
我也建议您为表格使用别名。
答案 1 :(得分:1)
在UserName
WHERE UserName = @UserName
之前添加表名
您的查询应该是:
SELECT CarReserve.ID
FROM CarReserve
INNER JOIN aspnet_Users ON CarReserve.UserName = aspnet_Users.UserName
WHERE aspnet_Users.UserName = @UserName
------^-----------^----------------
或者
SELECT CarReserve.ID
FROM CarReserve
INNER JOIN aspnet_Users ON CarReserve.UserName = aspnet_Users.UserName
WHERE CarReserve.UserName = @UserName
------^---------^----------------
答案 2 :(得分:1)
您必须将username
子句中的WHERE
字段别名为明确限定:
SELECT CarReserve.ID
FROM CarReserve
INNER JOIN aspnet_Users ON CarReserve.UserName = aspnet_Users.UserName
WHERE aspnet_Users.UserName = @UserName