select a.sort名称, isnull(b.sort,'无') 所属类别  from yourtable a left join b on a.parentid = b.id

解决方案 »

  1.   

    select a.sort名称, isnull(b.sort,'无') 所属类别  from yourtable a left join  yourtable b on a.parentid = b.id
      

  2.   

    select [id], sort, isnull((select sort from 表名 where b.parentid = 表名.id),0) from 表名 b
      

  3.   

    select id,sort,case when parentid=0 then '无' else parentid end parentid from 表
      

  4.   

    select sort 名称,case when parentid=0 then '无' else parentid end 所属类别 from 表
      

  5.   

    select A.sort 名称, isnull(B.sort, '无') 所属类别 from yourtable as A
     left join yourtable as B on A.parentid = B.id
      

  6.   

    select a.sort 名称,'无' 所属类别 from table where parentid=0
    union 
    select a.sort 名称,b.sort 所属类别 from table a inner join table b on a.parentid=b.id  where a.parentid<>0
      

  7.   

    谢谢各位。上述问题已经在浪人的提示下得到解决
    现在尚有一个问题不清楚
    join on 前面为什么要加left 我查了sql联机帮助。没有查到,请指教一二
      

  8.   

    1 .INNER JOIN 此内联接称为相等联接。它返回两个表中的所有列,但只返回在联接列中具有相等值的行。2.LEFT OUTER JOIN 或 LEFT JOIN
    但只返回在联接列中具有左边值的行。
    3\RIGHT OUTER JOIN 或 RIGHT JOIN
    但只返回在联接列中具有由边值的行。4\FULL OUTER JOIN 或 FULL JOIN 
    包括不匹配的行保留不匹配信息