有一个logins 表记录每个用户登陆和登出系统的时间,现在要求每一天最大用户并发数,请高手指点。一下是我从表里截取的数据供参考用户ID                           登陆时间               登出时间                在线时间
UserID CreatedServer         LoginClient             LogoutClient         Minutes
1785 2011-12-01 08:18:03.490 2011-12-01 08:18:00.683 2011-12-01 15:14:00.683 416
1920 2011-12-01 08:23:21.647 2011-12-01 08:23:22.493 2011-12-01 10:50:22.493 147
1928 2011-12-01 08:55:23.770 2011-12-01 08:55:38.597 2011-12-01 19:37:38.597 642
1914 2011-12-01 11:24:35.753 2011-12-01 11:24:57.620 2011-12-01 13:03:57.620 99
1902 2011-12-01 11:39:49.387 2011-12-01 11:40:06.367 2011-12-01 16:22:06.367 282
1791 2011-12-01 11:57:18.327 2011-12-01 11:57:24.983 2011-12-01 12:58:24.983 61
1939 2011-12-01 16:48:29.563 2011-12-01 16:48:27.397 2011-12-01 20:26:27.397 218
1886 2011-12-01 18:09:47.187 2011-12-01 18:09:48.683 2011-12-01 18:24:48.683 15
1889 2011-12-01 18:10:02.917 2011-12-01 18:09:59.487 2011-12-01 18:44:59.487 35
1886 2011-12-01 18:26:11.113 2011-12-01 18:26:13.430 2011-12-01 18:33:13.430 7
1886 2011-12-01 18:32:47.050 2011-12-01 18:32:49.587 2011-12-01 18:55:49.587 23
1902 2011-12-02 09:03:14.990 2011-12-02 09:03:09.417 2011-12-02 10:31:09.417 88
1940 2011-12-02 09:04:10.117 2011-12-02 09:04:10.740 2011-12-02 09:05:10.740 1
1913 2011-12-02 09:04:48.230 2011-12-02 09:04:46.600 2011-12-02 10:17:46.600 73
1913 2011-12-02 11:22:40.333 2011-12-02 11:22:38.660 2011-12-02 12:38:38.660 76
1920 2011-12-02 12:39:02.877 2011-12-02 12:39:00.803 2011-12-02 14:57:00.803 138
1920 2011-12-02 14:56:44.883 2011-12-02 14:56:43.467 2011-12-02 14:58:43.467 2

解决方案 »

  1.   

    用户ID                         登陆时间                  登出时间               在线时间
    UserID CreatedServer          LoginClient            LogoutClient             Minutes
    1785 2011-12-01 08:18:03.490 2011-12-01 08:18:00.683 2011-12-01 15:14:00.683 416
    1920 2011-12-01 08:23:21.647 2011-12-01 08:23:22.493 2011-12-01 10:50:22.493 147
    1928 2011-12-01 08:55:23.770 2011-12-01 08:55:38.597 2011-12-01 19:37:38.597 642
    1914 2011-12-01 11:24:35.753 2011-12-01 11:24:57.620 2011-12-01 13:03:57.620 99
    1902 2011-12-01 11:39:49.387 2011-12-01 11:40:06.367 2011-12-01 16:22:06.367 282
    1791 2011-12-01 11:57:18.327 2011-12-01 11:57:24.983 2011-12-01 12:58:24.983 61
    1939 2011-12-01 16:48:29.563 2011-12-01 16:48:27.397 2011-12-01 20:26:27.397 218
    1886 2011-12-01 18:09:47.187 2011-12-01 18:09:48.683 2011-12-01 18:24:48.683 15
    1889 2011-12-01 18:10:02.917 2011-12-01 18:09:59.487 2011-12-01 18:44:59.487 35
    1886 2011-12-01 18:26:11.113 2011-12-01 18:26:13.430 2011-12-01 18:33:13.430 7
    1886 2011-12-01 18:32:47.050 2011-12-01 18:32:49.587 2011-12-01 18:55:49.587 23
    1902 2011-12-02 09:03:14.990 2011-12-02 09:03:09.417 2011-12-02 10:31:09.417 88
    1940 2011-12-02 09:04:10.117 2011-12-02 09:04:10.740 2011-12-02 09:05:10.740 1
    1913 2011-12-02 09:04:48.230 2011-12-02 09:04:46.600 2011-12-02 10:17:46.600 73
    1913 2011-12-02 11:22:40.333 2011-12-02 11:22:38.660 2011-12-02 12:38:38.660 76
    1920 2011-12-02 12:39:02.877 2011-12-02 12:39:00.803 2011-12-02 14:57:00.803 138
    1920 2011-12-02 14:56:44.883 2011-12-02 14:56:43.467 2011-12-02 14:58:43.467 2
      

  2.   

    CREATE TABLE [templogin](
    [UserID] [int] NOT NULL,
    [LoginClient] [datetime] NOT NULL,
    [LogoutClient] [datetime] NULL
    ) ON [PRIMARY]
    GO
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1785, CAST(0x00009FAC0088C86D AS DateTime), CAST(0x00009FAC00FB0A6D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAC008A418C AS DateTime), CAST(0x00009FAC00B2A17C AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1928, CAST(0x00009FAC00931E6B AS DateTime), CAST(0x00009FAC0143730B AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC009477EC AS DateTime), CAST(0x00009FAC00B4542C AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAC0094A48A AS DateTime), CAST(0x00009FAC00A751CA AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC0094B3CA AS DateTime), CAST(0x00009FAC00995F1A AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC009934E6 AS DateTime), CAST(0x00009FAC00A1B896 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC00994DF3 AS DateTime), CAST(0x00009FAC009DB2F3 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC009D999B AS DateTime), CAST(0x00009FAC00D0AFBB AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00A18F17 AS DateTime), CAST(0x00009FAC00BB1A27 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00A65822 AS DateTime), CAST(0x00009FAC00A91742 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAC00A75178 AS DateTime), CAST(0x00009FAC00C04FE8 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1313, CAST(0x00009FAC00AB5EA5 AS DateTime), CAST(0x00009FAC00ABEB45 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1940, CAST(0x00009FAC00ABCE3F AS DateTime), CAST(0x00009FAC011CF6FF AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAC00B298A3 AS DateTime), CAST(0x00009FAC0108D6C3 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00B46284 AS DateTime), CAST(0x00009FAC00B8C784 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00B8C9F0 AS DateTime), CAST(0x00009FAC00BC5C00 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00BB1504 AS DateTime), CAST(0x00009FAC00C53E94 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00BC2146 AS DateTime), CAST(0x00009FAC00D75236 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAC00C04A36 AS DateTime), CAST(0x00009FAC010DBE56 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00C50B57 AS DateTime), CAST(0x00009FAC00D5CC67 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC00D09BE1 AS DateTime), CAST(0x00009FAC00EA6D41 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00D5CB37 AS DateTime), CAST(0x00009FAC00EF9C97 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00D724B1 AS DateTime), CAST(0x00009FAC00E2ADD1 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00E2AF4B AS DateTime), CAST(0x00009FAC00EDF21B AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC00EA5613 AS DateTime), CAST(0x00009FAC00F206D3 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC00EFC3EA AS DateTime), CAST(0x00009FAC010B817A AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC00F1D888 AS DateTime), CAST(0x00009FAC0113E748 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC00F36781 AS DateTime), CAST(0x00009FAC010B0661 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1590, CAST(0x00009FAC00FE094A AS DateTime), CAST(0x00009FAC0118AD9A AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAC0108B2C0 AS DateTime), CAST(0x00009FAC0109CC00 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAC0109BCE3 AS DateTime), CAST(0x00009FAC010A0333 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAC010A0006 AS DateTime), CAST(0x00009FAC01203F56 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC010B6266 AS DateTime), CAST(0x00009FAC0151B266 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC010BCD28 AS DateTime), CAST(0x00009FAC0118B5D8 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAC010E5DC9 AS DateTime), CAST(0x00009FAC01188759 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1938, CAST(0x00009FAC0112B85C AS DateTime), CAST(0x00009FAC01343A7C AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAC0113AF4B AS DateTime), CAST(0x00009FAC01387D2B AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1923, CAST(0x00009FAC0114AB4F AS DateTime), CAST(0x00009FAC0152BDEF AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1939, CAST(0x00009FAC0114FB1B AS DateTime), CAST(0x00009FAC0150DB3B AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0117B2CF AS DateTime), CAST(0x00009FAC0119E54F AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0119D0FE AS DateTime), CAST(0x00009FAC011F4F3E AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAC011AB903 AS DateTime), CAST(0x00009FAC011AFF53 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1889, CAST(0x00009FAC011E3633 AS DateTime), CAST(0x00009FAC012B6533 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC011F37FC AS DateTime), CAST(0x00009FAC01200AEC AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC01213D5C AS DateTime), CAST(0x00009FAC0121C9FC AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAC01219824 AS DateTime), CAST(0x00009FAC012410F4 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0121BD34 AS DateTime), CAST(0x00009FAC0124C2A4 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1325, CAST(0x00009FAC0123B271 AS DateTime), CAST(0x00009FAC01243F11 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0124EF82 AS DateTime), CAST(0x00009FAC01283B42 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1313, CAST(0x00009FAC0127244B AS DateTime), CAST(0x00009FAC0127B0EB AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1942, CAST(0x00009FAC0127D83C AS DateTime), CAST(0x00009FAC0152245C AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC012838C8 AS DateTime), CAST(0x00009FAC012B8488 AS DateTime))
      

  3.   

    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC012B535D AS DateTime), CAST(0x00009FAC012F720D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1889, CAST(0x00009FAC012B6006 AS DateTime), CAST(0x00009FAC0134FCF6 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC012FD55D AS DateTime), CAST(0x00009FAC0131C18D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0131A59C AS DateTime), CAST(0x00009FAC0137F6CC AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1938, CAST(0x00009FAC01343E99 AS DateTime), CAST(0x00009FAC0140E0F9 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1889, CAST(0x00009FAC01354DA7 AS DateTime), CAST(0x00009FAC014ABA07 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC0137FD70 AS DateTime), CAST(0x00009FAC01419A60 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1941, CAST(0x00009FAC013872E4 AS DateTime), CAST(0x00009FAC01543074 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1938, CAST(0x00009FAC0141006B AS DateTime), CAST(0x00009FAC01517B2B AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1886, CAST(0x00009FAC01419BBD AS DateTime), CAST(0x00009FAC0150FD3D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1929, CAST(0x00009FAD0087AC02 AS DateTime), CAST(0x00009FAD00A20A02 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1923, CAST(0x00009FAD0087FB36 AS DateTime), CAST(0x00009FAD00AE28A6 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1928, CAST(0x00009FAD008B64EA AS DateTime), CAST(0x00009FAD00D4BA5A AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAD008DA5EA AS DateTime), CAST(0x00009FAD00C6809A AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAD00951818 AS DateTime), CAST(0x00009FAD00A9B188 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAD00952EB9 AS DateTime), CAST(0x00009FAD00AD5A39 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1940, CAST(0x00009FAD00957696 AS DateTime), CAST(0x00009FAD0095BCE6 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAD0095A09C AS DateTime), CAST(0x00009FAD00A9AD6C AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1940, CAST(0x00009FAD0095A19D AS DateTime), CAST(0x00009FAD00B9563D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAD009D5088 AS DateTime), CAST(0x00009FAD00AA7F88 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1313, CAST(0x00009FAD00A8C5B6 AS DateTime), CAST(0x00009FAD00A998A6 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1914, CAST(0x00009FAD00A9933D AS DateTime), CAST(0x00009FAD00AB7F6D AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAD00A99FD0 AS DateTime), CAST(0x00009FAD00BB7A20 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1791, CAST(0x00009FAD00AA9707 AS DateTime), CAST(0x00009FAD00F73837 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAD00AC2A8B AS DateTime), CAST(0x00009FAD00D3FDDB AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1590, CAST(0x00009FAD00AE1425 AS DateTime), CAST(0x00009FAD00E6A885 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1923, CAST(0x00009FAD00AE97D8 AS DateTime), CAST(0x00009FAD00D3AC08 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1940, CAST(0x00009FAD00BB38B1 AS DateTime), CAST(0x00009FAD00FC0A71 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAD00BB7E6E AS DateTime), CAST(0x00009FAD00D05E2E AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1920, CAST(0x00009FAD00D07821 AS DateTime), CAST(0x00009FAD00F65F41 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAD00D3997C AS DateTime), CAST(0x00009FAD00EAABBC AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1902, CAST(0x00009FAD00D4756F AS DateTime), CAST(0x00009FAD00F710CF AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1923, CAST(0x00009FAD00D4BE14 AS DateTime), CAST(0x00009FAD00E1ED14 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1928, CAST(0x00009FAD00D648D8 AS DateTime), CAST(0x00009FAD00FC7648 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1923, CAST(0x00009FAD00E1DAF3 AS DateTime), CAST(0x00009FAD00FF3E63 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1590, CAST(0x00009FAD00E913A5 AS DateTime), CAST(0x00009FAD00EFAB25 AS DateTime))
    INSERT [templogin] ([UserID], [LoginClient], [LogoutClient]) VALUES (1913, CAST(0x00009FAD00EA9F72 AS DateTime), CAST(0x00009FAD00EFD762 AS DateTime))
      

  4.   


    declare @t table 
    (UserID varchar(6),
    CreatedServer datetime,
    LoginClient datetime,
    LogoutClient datetime,
    Minutes  int
    )
    insert into @t
    select '1785','2011-12-01 08:18:03.490','2011-12-01 08:18:00.683','2011-12-01 15:14:00.683',416 union all
    select '1920','2011-12-01 08:23:21.647','2011-12-01 08:23:22.493','2011-12-01 10:50:22.493',147 union all
    select '1928','2011-12-01 08:55:23.770','2011-12-01 08:55:38.597','2011-12-01 19:37:38.597',642 union all
    select '1914','2011-12-01 11:24:35.753','2011-12-01 11:24:57.620','2011-12-01 13:03:57.620',99 union all
    select '1902','2011-12-01 11:39:49.387','2011-12-01 11:40:06.367','2011-12-01 16:22:06.367',282 union all
    select '1791','2011-12-01 11:57:18.327','2011-12-01 11:57:24.983','2011-12-01 12:58:24.983',61 union all
    select '1939','2011-12-01 16:48:29.563','2011-12-01 16:48:27.397','2011-12-01 20:26:27.397',218 union all
    select '1886','2011-12-01 18:09:47.187','2011-12-01 18:09:48.683','2011-12-01 18:24:48.683',15 union all
    select '1889','2011-12-01 18:10:02.917','2011-12-01 18:09:59.487','2011-12-01 18:44:59.487',35 union all
    select '1886','2011-12-01 18:26:11.113','2011-12-01 18:26:13.430','2011-12-01 18:33:13.430',7 union all
    select '1886','2011-12-01 18:32:47.050','2011-12-01 18:32:49.587','2011-12-01 18:55:49.587',23 union all
    select '1902','2011-12-02 09:03:14.990','2011-12-02 09:03:09.417','2011-12-02 10:31:09.417',88 union all
    select '1940','2011-12-02 09:04:10.117','2011-12-02 09:04:10.740','2011-12-02 09:05:10.740',1 union all
    select '1913','2011-12-02 09:04:48.230','2011-12-02 09:04:46.600','2011-12-02 10:17:46.600',73 union all
    select '1913','2011-12-02 11:22:40.333','2011-12-02 11:22:38.660','2011-12-02 12:38:38.660',76 union all
    select '1920','2011-12-02 12:39:02.877','2011-12-02 12:39:00.803','2011-12-02 14:57:00.803',138 union all
    select '1920','2011-12-02 14:56:44.883','2011-12-02 14:56:43.467','2011-12-02 14:58:43.467',2select * from @t这个表主键是什么?
      

  5.   


    create function getusercount
    (@userID int,@logintime datetime,@logouttime datetime)
    returns int
    as
    begin
    declare @i int 
        select @i=count(1) from [templogin] 
        where UserID<>@userID and 
    (@logintime between [LoginClient] and [LogoutClient]
    or @logouttime between [LoginClient] and [LogoutClient])
    --or (@logintime<=[LoginClient] and @logouttime>=[LogoutClient]))
    return @i
    endselect 
    日期=convert(varchar(10),[LoginClient],120),最大在线人数=max(在线人数) from 
    (
    select *,在线人数=dbo.getusercount([UserID],[LoginClient],[LogoutClient]) 
    from [templogin] 
    ) a 
    group by convert(varchar(10),[LoginClient],120)
    /* 
    日期         最大在线人数
    ---------- -----------
    2011-12-01 15
    2011-12-02 13
    */
      

  6.   


    create function getusercount
    (@time datetime)
    returns int
    as
    begin
    declare @i int 
        select @i=count(1) from [templogin] 
        where @time between [LoginClient] and [LogoutClient]
    return @i
    end
    --根据时间得到这个时间点的在线人数select dbo.getusercount('2011-12-01 12:39:32.000')
    /*
    9
    */
    select top 86400 identity(int,1,1) as id into #t 
    from sys.objects o,sys.columns cselect 日期='2011-12-01',
    最大人数=max(dbo.getusercount(dateadd(s,id,'2011-12-01'))  )
    from #t
    /*
    日期         最大人数
    ---------- -----------
    2011-12-01 12
    */
    drop table #t每一秒一检测在线人数,效率上不太好,但是准确性高
      

  7.   


    select top 86400 identity(int,1,1) as id into #t 
    from sys.objects o,sys.columns cselect 日期=b.时间,
    最大人数=max(dbo.getusercount(dateadd(s,id,b.时间))  )
    from #t a join 
    (
    select convert(varchar(10),[LoginClient],120) as 时间
    from [templogin] 
    group by convert(varchar(10),[LoginClient],120)
    ) b on 1=1 group by b.时间
    /*
    日期         最大人数
    ---------- -----------
    2011-12-01 12
    2011-12-02 10--数据量大的时候效率上是个问题。
      

  8.   


    declare @t table(st datetime,et datetime);
    insert into @t select '2012-01-17 16:00:00','2012-01-17 17:00:00'
    union all select '2012-01-17 16:10:00','2012-01-17 17:10:00'
    union all select '2012-01-17 16:20:00','2012-01-17 17:20:00'
    union all select '2012-01-17 16:30:00','2012-01-17 17:30:00'
    union all select '2012-01-17 16:40:00','2012-01-17 17:40:00'
    union all select '2012-01-17 16:50:00','2012-01-17 17:50:00'
    union all select '2012-01-17 17:00:00','2012-01-17 18:00:00'
    union all select '2012-01-17 17:10:00','2012-01-17 18:10:00'
    union all select '2012-01-17 17:20:00','2012-01-17 18:20:00'
    select ap.ct,a.st from @t a outer apply (select COUNT(1) ct from @t b where a.st between b.st and b.et) ap
    -- 不过可能会很耗时