我在弄清楚如何从与我通过 SELECT 命令访问的表不同的表获取列信息以及如何根据 IF 语句选择该列的某些单元格时遇到问题。 SQL 代码如下:
SELECT Name, Age, Grant
FROM table
现在,通过授予选择,我想访问另一个表(授予所在的位置有一个 IF 语句)。将有 2 个不同的授予值,即“a”和“b”。当授权为“a”时,您将选择第二个表的第一列、第一行,而“b”变量将选择表 2 中第一列的第二行。如果这不能仅在SQL 然后我也在使用 asp.net/C#,但我更喜欢用 SQL 完成。我还使用 asp:SqlDataSource 从 SQL 服务器收集数据。我预先感谢大家的帮助!
表格:
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 就是所有信息。再次感谢您!
最佳答案
在我看来,您想要的是 JOIN。
SELECT t1.name, t1.age, t2.grantReturn
FROM Table1 t1
JOIN Table2 t2 ON t1.Grant = t2.Grant
sql 连接(在本例中为内部连接)将从第一个表中获取行,并在给定条件下将它们与第二个表中的行进行匹配。在这种情况下,它表示,对于表 1 中的每个表,找到表 2 中具有相同授予的行。然后,在 select 语句中,您可以从该表中返回您想要的任何其他数据。
关于c# - SQL 表根据带有存储过程的 IF 语句从另一个表获取信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17996252/