字典表:systemDict显示顺序  字典名称  
-------------------
sd_sort   sd_name
------------------
1         会仪室
2         办公室
3         洗手间
4         配电室数据库:nodeHouseClassID   名称    楼层
-------------------
ID   nhc_mc  nhc_cs
-------------------
1    会仪室  9
2    会仪室  12 
3    配电室  13
4    会仪室  6
5    洗手间  9实现结果如下:
------------------------------
ID   nhc_mc  nhc_cs
-------------------
1    会仪室  9
2    会仪室  12 
4    会仪室  6
5    洗手间  9
3    配电室  13也就是根据“字典显示顺序”sd_sort 分组排序显示nodeHouseClass表数据。

解决方案 »

  1.   

    select m.* from nodeHouseClass m , systemDict n where m.nhc_mc = n.sd_name order by n.sd_sort
      

  2.   

    create table systemDict(sd_sort int,sd_name  varchar(10))
    insert into systemDict values(1 ,'会仪室')
    insert into systemDict values(2 ,'办公室')
    insert into systemDict values(3 ,'洗手间')
    insert into systemDict values(4 ,'配电室')
    create table nodeHouseClass(ID int,nhc_mc varchar(10),nhc_cs int)
    insert into nodeHouseClass values(1 ,'会仪室', 9)
    insert into nodeHouseClass values(2 ,'会仪室', 12)  
    insert into nodeHouseClass values(3 ,'配电室', 13)
    insert into nodeHouseClass values(4 ,'会仪室', 6)
    insert into nodeHouseClass values(5 ,'洗手间', 9)
    goselect m.* from nodeHouseClass m , systemDict n where m.nhc_mc = n.sd_name order by n.sd_sortdrop table systemDict ,nodeHouseClass/*
    ID          nhc_mc     nhc_cs      
    ----------- ---------- ----------- 
    1           会仪室        9
    2           会仪室        12
    4           会仪室        6
    5           洗手间        9
    3           配电室        13(所影响的行数为 5 行)
    */
      

  3.   


    SQL语句可挺强大的,只要有需求,就能搞定!!学习了。
      

  4.   


    declare @systemDict table (sd_sort int,sd_name varchar(6))
    insert into @systemDict
    select 1,'会仪室' union all
    select 2,'办公室' union all
    select 3,'洗手间' union all
    select 4,'配电室'declare @nodeHouseClass table (ID int,nhc_mc varchar(6),nhc_cs int)
    insert into @nodeHouseClass
    select 1,'会仪室',9 union all
    select 2,'会仪室',12 union all
    select 3,'配电室',13 union all
    select 4,'会仪室',6 union all
    select 5,'洗手间',9select a.* from @nodeHouseClass a 
    left join @systemDict b on a.nhc_mc=b.sd_name
    order by b.sd_sort
    /*ID          nhc_mc nhc_cs
    ----------- ------ -----------
    1           会仪室    9
    2           会仪室    12
    4           会仪室    6
    5           洗手间    9
    3           配电室    13
    */
      

  5.   


    declare @systemDict table (sd_sort int,sd_name varchar(6))
    insert into @systemDict
    select 1,'会仪室' union all
    select 2,'办公室' union all
    select 3,'洗手间' union all
    select 4,'配电室'declare @nodeHouseClass table (ID int,nhc_mc varchar(6),nhc_cs int)
    insert into @nodeHouseClass
    select 1,'会仪室',9 union all
    select 2,'会仪室',12 union all
    select 3,'配电室',13 union all
    select 4,'会仪室',6 union all
    select 5,'洗手间',9select a.* from @nodeHouseClass a 
    left join @systemDict b on a.nhc_mc=b.sd_name
    order by b.sd_sort
    /*ID          nhc_mc nhc_cs
    ----------- ------ -----------
    1           会仪室    9
    2           会仪室    12
    4           会仪室    6
    5           洗手间    9
    3           配电室    13
    */