问题是这样的,我现在有四张表:
     表一:软件队员信息表(s_memberinfo) 字段如下:s_memberid(编号),name(姓名),email(email地址),role(角色)等其它不重要的省略。
      表二:外语选手信息表(e_memberinfo) 字段如下:e_memberid(编号),name(姓名),email(email地址),role(角色)等其它不重要的省略。
    表三:记者信息表(tercelinfo) 字段如下:tercel(编号),name(姓名),email(email地址)等其它不重要的省略。
     表四:命题人信息表(propositioninfo) 字段如下:propositionid(编号),name(姓名),email(email地址),role(角色)等其它不重要的省略。
    现在我想写一个存储过程,筛选出这四张表中的name,email,role字段,然后与GridView控件绑定,用于群发邮件。请问这个存储过程该怎样写啊?     

解决方案 »

  1.   

    不需要存储过程吧,直接用union把几个表的数据弄到一起就行了其实分别取出来,再在后台把几个Datatable内容弄到一个Datatable里面,再绑定也一样
      

  2.   

    谢绝mask,意思就是只允许实名...我是用网名的,闪...
      

  3.   


    select name,email,role from s_memberinfo union 
    select name,email,role from e_memberinfo union 
    select name,email,''   from tercelinfo union
    select name,email,role from propositioninfo
      

  4.   

    maskmosaic马赛克。谢绝马赛克。。哦~~LZ喜欢无码~
      

  5.   

    全部select之后取email发邮件、
      

  6.   


    CREATE PROC PRO
    AS 
      BEGIN
           SELECT [NAME],EMAIL,[ROLE] FROM s_memberinfo
           UNION ALL
           SELECT [NAME],EMAIL,[ROLE] FROM e_memberinfo
           UNION ALL
           SELECT [NAME],EMAIL,[ROLE]='' FROM tercelinfo
           UNION ALL
           SELECT [NAME],EMAIL,[ROLE] FROM propositioninfo
         END
      

  7.   

    你可以在存储过程里创建一张临时表,它有name,email,role等字段,然后把四张表分别select出来并插入到临时表,最后select临时表返回去。
      

  8.   

    整个方法理论上可行,不过太费内存了,效率不高。应该动态建一个datatable再进行添加,将三个表中的三个字段都进行联合添加。效率很高的!