SQL从另一个表列数据返回1个表数据

SQL从另一个表列数据返回1个表数据,sql,sql-server,tsql,Sql,Sql Server,Tsql,嘿,伙计们,快问个问题。 如果我想创建一个存储过程,从不同的表列中获取一个表中的所有信息。 更多细节。。。。。 表1=用户PK=账户ID 表2=账户PK=账户ID 我要检查的行称为role(int仅包含1和0)。 因此,如果role=1,我想检查哪些帐户具有role 1,并显示具有该角色编号的所有用户。如果不是1,则0将显示其他用户 现在我想的是 USE [database] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO

嘿,伙计们,快问个问题。 如果我想创建一个存储过程,从不同的表列中获取一个表中的所有信息。 更多细节。。。。。 表1=用户PK=账户ID 表2=账户PK=账户ID 我要检查的行称为role(int仅包含1和0)。 因此,如果role=1,我想检查哪些帐户具有role 1,并显示具有该角色编号的所有用户。如果不是1,则0将显示其他用户

现在我想的是

 USE [database]
 GO

 SET ANSI_NULLS ON
 GO
 SET QUOTED_IDENTIFIER ON
 GO
 CREATE PROCEDURE [dbo].[sp_Users_SelectAllByaccountRole]
 (
 @role int
 )
 AS

 BEGIN
 select * from Users 
 where (role = @role from Accounts) 
 && 
 (Users.accountid == account.accountid)

 END

但是我不知道语法,我也不确定在我的逻辑上是否会非常感谢任何帮助。

假设
角色
列位于
帐户
表上,那么看起来像是一个简单的
内部联接
就可以了

SELECT u.*
FROM Users u
INNER JOIN Accounts a on a.AccountID = u.AccountID
WHERE a.Role = @role

在T-SQL中使用AND或运算符。不要使用&&| | | | | | | | | | | | | | | | | | | | | | | | |谢谢你做。有关联接的更多信息,请参见。