Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 抓取两个用户ID并将它们加入到另一个表中_Sql Server - Fatal编程技术网

Sql server 抓取两个用户ID并将它们加入到另一个表中

Sql server 抓取两个用户ID并将它们加入到另一个表中,sql-server,Sql Server,我对SQL Server数据库和最近的项目非常陌生。我有两个表用户和朋友用户包含所有名称、ID和其他附加列Friends表有firstuserID、SecondUserID和Friendstatus列,并且没有用户的名称 我已经手动将ID添加到friends表中,我想根据他们的姓名显示他们的状态。我提出的问题 @username nvarchar(50), @friendname nvarchar(50) AS SELECT * FROM Friends W

我对SQL Server数据库和最近的项目非常陌生。我有两个表
用户
朋友
<代码>用户包含所有名称、ID和其他附加列
Friends
表有
firstuserID
SecondUserID
Friendstatus
列,并且没有用户的名称

我已经手动将ID添加到friends表中,我想根据他们的姓名显示他们的状态。我提出的问题

    @username nvarchar(50),
    @friendname nvarchar(50)
AS
   SELECT * 
   FROM Friends 
   WHERE ID IN 
       (SELECT ID as ID 
        FROM Users 
        WHERE UserName = @usernameID 
        UNION
        SELECT ID as MyID 
        FROM Users 
        WHERE UserName = @friendnameID)
我确信我的疑问是错误的。你能给我一个提示或帮助我吗。

试试这个:

  @username nvarchar(50),
    @friendname nvarchar(50)
AS
   SELECT * 
   FROM Friends 
   WHERE ID IN 
       (SELECT ID 
        FROM Users 
        WHERE UserName IN(@username,@friendname) 
         )

@Muterb:-这个查询真的有效吗?我假设Friends表中的Id列是Friends表的PK,并且在上面的查询中它看起来像用户表的外键?请添加预期的输出