从多个sql表中获取数据

时间:2013-12-06 17:35:37

标签: c# asp.net sql sql-server

我有一个像这样的简单SQL数据库:

请求

{id|user|Date|ReqType|FreqID|Status|....}

ConfP

{id|Title|ConferenceName|Link|....}

JournalP

{id|Title|JournalName|Link|....}
  • ReqIDid的{​​{1}}有关系ConfP
  • JournalP列值为:新建/已解决
  • Status列值为:ConfP / JournalP

我正在使用asp.net。

每个用户都应该在自己的页面中看到自己的请求 此外,数据应从“请求”表中的“ReqType”列中的名称表中进行选择。 我想通过这种格式的表在ASP.NET页面上显示结果:

ReqType

MyCode是:

{Date|ReqType|Title|Link|Status}

但它只能从JournalP表中获取数据。

最后我想要显示一个像这样的状态计数夏季:

SelectCommand="SELECT Request.Type, Request.OrderDate, Request.OrderTime, Request.Status, JournalP.Title 
        FROM Request 
        INNER JOIN JournalP
        ON JournalP.ID=Request.FreqID
        WHERE (Request.[UserName] = @UserName)">

请帮帮我,我该如何更改密码? 是否还需要额外的C#代码?

1 个答案:

答案 0 :(得分:1)

试试吧......

如果您在名为#Temp

的表格中有以下数据,请说明
Id  RType       RStatus
1   ConfP       New
2   ConfP       Solved
3   ConfP       New
4   JournalP    New
5   JournalP    New
5   JournalP    Solved

然后你可以写点像

Select 'All request : ' + Convert(varchar,COUNT(*)) + 
    ' | Solved : ' + Convert(varchar,(select COUNT(*)
                    From #Temp
                    Where RStatus='Solved'
                    )) +
    ' | New : ' + Convert(varchar,(select COUNT(*)
                    From #Temp
                    Where RStatus='New'
                    ))
From #Temp 

提供以下输出

所有请求:6 |解决:2 |新:4