求助问题1 
表A :
Division name1 name2
市场部       1      1表b:ID name
1  张三
2  李四
要求:检索出市场部的全部人员名单,使得在Visual studio 的报表生成器中可用。似乎在那个报表生成器中好像数组,临时变量,临时表都不能用吧。所以只好限制为只使用SQL语言。求助问题2
表A:
DisID     ID  nvarcha2   Nint1  Nint2
a001      1     市场部       1      2
a001      2     财务部       2      3
a002      1     张三
a002      2     李四  
a002      3     王五现在已知: 表中记录为  a001的 代表着部门类别的记录,a002代表着姓名类别的记录。现求SQL语句列出公司各部门人员组成。
结果应当为:
市场部    张三    李四
财务部    李四    王五
其中SQL语句可以在Visual Studio的报表生成器中运行(中间不能声明变量,临时表)。

解决方案 »

  1.   

    补充修改:问题1 里的表1字段值有个错误正确结构如下:
    表A : 
    Division name1 name2 
    市场部      1      2
      

  2.   


    select T.nvarcha2,a.nvarcha2,b.nvarcha2 from
    (select nvarcha2,Nint1,Nint2 from TA where DisID='001') T,TA b,TA c
    where T.Nint1=a.ID and T.Nint2=b.ID
      

  3.   

    对于你的问题1,我的理解是这样的:select a.Division,b.name,c.name from TA a,TB b,TB c
    where a.name1=b.id and a.name2=c.id表A : 
    Division name1 name2 
    市场部      1      1 表b: ID name 
    1  张三 
    2  李四 
      

  4.   

    以下结果不知是不是楼想要的结果--删除表A
    if object_id('表A') is not null
    drop table 表A
    goif object_id('表B') is not null
    drop table 表B
    go
    --创建表A:
    create table 表A(
    Division varchar(10),
    name1  varchar(10),
    name2  varchar(10)
    )GO
    --创建表B:CREATE TABLE 表b
    (ID  varchar(10),
     name  varchar(10)
    )
    GO--生成表记录
    insert into 表A values('市场部','1','2')
    insert into 表A values('财务部','2','3')insert into 表B values('1','张三')
    insert into 表B values('2','李四')
    insert into 表B values('3','王五')--SQL语句
    select a.division,b.name,C.NAME from 表A A,(select * from 表b) B,(select * from 表b) C
    WHERE A.NAME1=B.ID AND A.NAME2=c.ID
      

  5.   

    有点不明白,大家怎么这么喜欢写sql来做报表,
    现在报表已经约来约不用变成,大有让程序员事业之势,
    有兴趣去搜索,中国的本土的,能解决中国报表问题的报表软件,我们公司用是FineReport,应该还有其他选择,大家可以去搜索