C# SQL表基于带有存储过程的IF语句从另一个表获取信息

C# SQL表基于带有存储过程的IF语句从另一个表获取信息,c#,asp.net,sql,select,C#,Asp.net,Sql,Select,我遇到了一个问题,即如何从不同的表中获取列信息,然后通过SELECT命令访问该表,以及如何根据IF语句选择该列的某些单元格。以下是SQL代码: SELECT Name, Age, Grant FROM table 现在,通过grant选择,我想访问另一个具有IF语句的表,其中grant是。将有两个不同的授权值,分别是a和b。当grant为a时,您将选择第二个表的第一列第一行,而b变量将选择表2中第一列的第二行。如果这不能在SQL中完成,那么我也在使用asp.net/C,但我更喜

我遇到了一个问题,即如何从不同的表中获取列信息,然后通过SELECT命令访问该表,以及如何根据IF语句选择该列的某些单元格。以下是SQL代码:

    SELECT Name, Age, Grant
    FROM table
现在,通过grant选择,我想访问另一个具有IF语句的表,其中grant是。将有两个不同的授权值,分别是a和b。当grant为a时,您将选择第二个表的第一列第一行,而b变量将选择表2中第一列的第二行。如果这不能在SQL中完成,那么我也在使用asp.net/C,但我更喜欢在SQL中完成。我还使用asp:SqlDataSource从SQL server收集数据。我提前感谢大家的帮助

表:

    table 1: with name, age and grant 
    --------------------
    |name    |Age|Grant|
    --------------------
    |jeff    |16 | A   |
    --------------------
    |jake    |21 | B   |
    -------------------- 

    table 2: with grant and grantReturn 
    -------------------
    |grantReturn|Grant|
    -------------------
    |spring     |  A  |
    -------------------
    |wintwe     |  B  |
    -------------------

如果桌子做得不好,对不起。表1中有更多的信息,但我想对两个有不同补助金的人保持简单。对于表2,这就是所有的信息。再次感谢你

好的。所以你需要学习加入


我觉得你想要的是加入

SELECT t1.name, t1.age, t2.grantReturn
FROM Table1 t1
JOIN Table2 t2 ON t1.Grant = t2.Grant

在本例中,sql联接(内部联接)将从第一个表中获取行,并在给定条件下将它们与第二个表中的行相匹配。在本例中,它表示,对于表1中的每个表,查找表2中具有相同授权的行。然后,在select语句中,您可以从该表返回所需的任何其他数据。

如果您使用一些示例数据和预期结果发布相关的表架构表及其列,则会更容易提供帮助。我添加了一个示例,说明了这些表在我的SQL数据库中的位置。您需要使用联接:
SELECT t1.name, t1.age, t2.grantReturn
FROM Table1 t1
JOIN Table2 t2 ON t1.Grant = t2.Grant