none
添加表里面的记录 RRS feed

  • 问题

  •   表设计及内容:

    Patient    DEPT_NO    StaffID DayTimeROOM   Medical_Records
    sunny   1 10012    星期一    9:00-10:00     0102
        ddf
    juu    2 10011    星期一    10:00-11:00    0201
        aa
    koko   2 10011   星期二    10:00-11:00    0201
        ffd
    lo   2 10011   星期四    11:00-12:00    0201      swe
    lp   2 10011   星期五    13:00-14:00    0201    wx
    we   4 10005   星期三    15:00-16:00    0401    wsf
    Exam



    现在我想按照时间把一条记录显示在相应的表格里面:
    比如 第一条记录显示在星期一的9:00-10:00的表格里面

        星期一 星期二 星期三 星期四 星期五
    9:00-10:00
    10:00-11:00
    11:00-12:00
    12:00-13:00
    13:00-14:00
    14:00-15:00
    15:00-16:00
    16:00-17:00          



    everything need your effort!

    2009年5月6日 6:03

答案

  • create table #tb( Patient nvarchar(20), [Day]  nvarchar(20),  [Time] nvarchar(30) )
    insert into #tb values('sunny','星期一' , '9:00-10:00')
    insert into #tb values('juu','星期一' , '10:00-11:00')
    insert into #tb values('koko','星期二' , '10:00-11:00')


    declare @sql varchar(8000)
    set @sql = 'select [Time] '
    select @sql = @sql + ' , max(case [Day] when ''' + [Day] + ''' then Patient else '''' end) [' + [Day] + ']'
    from (select distinct [Day] from #tb) as a
    set @sql = @sql + ' from #tb group by [Time]'
    print (@sql)
    exec(@sql)


    http://feiyun0112.cnblogs.com/
    2009年5月6日 7:11
    版主
  • 那您就可以自己建立一个类

    class taskrow
    {
        string HoursText;
     string MonText;
     string ThuText;
     string WenText;
    ..
    ..
    string SunText

    }

    然后把生成好的 taskrow[]  绑定到grid哦
    工作突然有点忙 嘿嘿
    2009年5月7日 4:46

全部回复

  • 您可以直接用 office web compoment com组件的交叉表
    工作突然有点忙 嘿嘿
    2009年5月6日 6:20
  • create table #tb( Patient nvarchar(20), [Day]  nvarchar(20),  [Time] nvarchar(30) )
    insert into #tb values('sunny','星期一' , '9:00-10:00')
    insert into #tb values('juu','星期一' , '10:00-11:00')
    insert into #tb values('koko','星期二' , '10:00-11:00')


    declare @sql varchar(8000)
    set @sql = 'select [Time] '
    select @sql = @sql + ' , max(case [Day] when ''' + [Day] + ''' then Patient else '''' end) [' + [Day] + ']'
    from (select distinct [Day] from #tb) as a
    set @sql = @sql + ' from #tb group by [Time]'
    print (@sql)
    exec(@sql)


    http://feiyun0112.cnblogs.com/
    2009年5月6日 7:11
    版主
  •     星期一 星期二 星期三 星期四 星期五
       
    9:00-10:00          
    10:00-11:00          
    11:00-12:00          
    12:00-13:00          
    13:00-14:00          
    14:00-15:00          
    15:00-16:00          
    16:00-17:00          




    这是用WPF做的,不是EXCEL表。  星期一至星期五,左边列是用listview 做的,比如把第一条记录添加到星期一的9:00-10:00 对应的表格里,并且点击这记录还会转到另外一个画面
    everything need your effort!
    • 已编辑 kistin 2009年5月6日 11:38
    2009年5月6日 11:21
  • 那您就可以自己建立一个类

    class taskrow
    {
        string HoursText;
     string MonText;
     string ThuText;
     string WenText;
    ..
    ..
    string SunText

    }

    然后把生成好的 taskrow[]  绑定到grid哦
    工作突然有点忙 嘿嘿
    2009年5月7日 4:46