SQL 查询 - SELECT WHERE Table1.ID = Table2.ID AND Table2.Var = @Var

CAJ*_*AJE 3 sql asp.net webforms

我正在尝试使用两个表和一个会话变量为 ASP NET 下拉列表创建 SQL 查询。

我想从表 1 中检索对应于表 2 中匹配 id 的所有值,其中表 2 由外部变量过滤。

很明显我不知道如何表达这个问题,这里是我试图做的一个简化的例子:

  • 我的站点有一个会话变量,它保存用户正在“过滤”的当前颜色。
  • 下拉列表将使用 SQL 查询显示与该颜色对应的汽车列表。

例如,如果会话变量是“Blue”,下拉列表将包含“Punto”,因为它可以看到“Blue”的颜色 ID 是 12,而“Punto”是与该颜色对应的唯一汽车名称。

链接图片:http : //i.imgur.com/fe9L12c.png

在此处输入图片说明

由于可以在 ASP NET 自定义查询中分配和调用会话变量,因此可以将会话变量称为,例如,@ExternalVar (Colours.ID WHERE (Colours.Name = @ExternalVar))

抱歉,我不得不把这当成一个测验问题;给出一个简化的例子是我能真正阐明我的问题的唯一方法。

Lor*_*vid 5

如果我理解上面的问题,我认为这应该可以解决问题

select * from Cars c
inner join Colours cl  on c.colourID = cl.ID
where cl.Name = @ExternalVar
Run Code Online (Sandbox Code Playgroud)