中自定义函数和游标应用的经典案例

来源:互联网 发布:js ftp 编辑:程序博客网 时间:2024/06/06 14:17
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

   这是网友的问题,我当时立马给出了自己的解决方案,但是没有想到中间有点小问题,发现后经过自己仔细调试,完全得到正确结果后,那个网友已经结帖了。我的代码遂成为鸡肋,食之无味,弃之可惜。但是我觉得我的代码确实还是挺经典的,所以整理了一下,供各位网友欣赏。
问题:
 

假设环境如下:

   表1:     ID,NAME,     ,    PHONE,

表中数据:     1      秦云       1010280013500000

               2      在路上     10378   13600000

               3      LEO        10000   13900000

 

   表2:     ID,NAME, 上机时间,管理员,

表中数据:    1  秦云   2004-1-1 李大伟

              2  秦云   2005-1-1 马化腾

              3   在路上 2005-1-1 马化腾

              4   秦云  2005-1-1 李大伟

              5  在路上2005-1-1 李大伟

 

实现目的:从表1中取所有人员列表,从表2中取上机次数和管理员.

            上机人员名单   上机次数  管理员(上这几次机的每个管理员都列出来)

              秦云            3            李大伟,马化腾,李大伟

              在路上          2           马化腾,李大伟

              LEO             0      

如果不算管理员那一列的话,我是这样写的。

SELECT 表1.NAMEAS姓名,COUNT(表2.ID)AS上机次数

FROM 表1LEFTOUTERJOIN

     表2ON表1.NAME=表2.NAME

GROUPBY表1.名称

 

解答:
测试用例

 

createtable表1(--droptable表1

ID    int,

NAME  varchar(10),

QQ    varchar(10),上一页 
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击