解决方案 »

  1.   


    ... where 夹具id is not null
      

  2.   

    这个是我的代码
    SELECT 夹具id,夹具项目名称,检具id,检具项目名称,模具id,模具项目名称FROM dbo.夹具项目视图  full OUTER JOIN  dbo.检具项目视图 on 夹具项目视图.夹具id=检具项目视图.检具id full OUTER JOIN  dbo.模具项目视图 on 夹具项目视图.夹具id=模具项目视图.模具id
      

  3.   


    --如果你确定你一定要用full join
    SELECT 夹具id,夹具项目名称,检具id,检具项目名称,模具id,模具项目名称FROM dbo.夹具项目视图  full OUTER JOIN  dbo.检具项目视图 on 夹具项目视图.夹具id=检具项目视图.检具id full OUTER JOIN  dbo.模具项目视图 on 夹具项目视图.夹具id=模具项目视图.模具id
    where 夹具id is not null
      

  4.   

    select COALESCE(夹具id,夹具项目名称,检具id,检具项目名称,模具id,模具项目名称)
    from(SELECT 夹具id,夹具项目名称,检具id,检具项目名称,模具id,模具项目名称FROM dbo.夹具项目视图  full OUTER JOIN  dbo.检具项目视图 on 夹具项目视图.夹具id=检具项目视图.检具id full OUTER JOIN  dbo.模具项目视图 on 夹具项目视图.夹具id=模具项目视图.模具id)t
      

  5.   

    where 夹具id is not null
      

  6.   

    这个查出来不重复的了,我想要的样子是像上面的那张图一样,就是把NULL的清除了就好了!可以实现吗?大哥
      

  7.   


    我就只想把查询结果里面的NULL清除掉,显示出来的样子还是像我的那张图片的样子,就是没有NULL的值!
      

  8.   

    vfp9.0:
    表中任何字段有null值。
    use tt
    lnfield=fcount()
    scan
    scatt to laarray(lnfield)
      for i=1 to lnfield
        if isnull(laarray(lnfield))
         dele 
        endif
      endfor
    endscan
      

  9.   


    select isnull(FieldName, '') FieldName from TableName
      

  10.   


    这个怎么使用?SELECT isnull(夹具id,'') 夹具id from TableName ?
      

  11.   

    declare @lnfield int
    set @lnfield=表中字段总数
    sql中的表扫描循环?
    将表的每个记录的每个字段赋值给一个数组。
    循环这个数组,查是否null,是,这删除。不知道用mssqlsever这么写?
    如果delete from tt where (sele 任何字段  is null from tt)改如何写?
      

  12.   

    select
      isnull(ltrim(夹具id),''),isnull(夹具项目名称,''),isnull(ltrim(检具id),''),isnull(检具项目名称,''),isnull(ltrim(模具id),''),insull(模具项目名称,'')FROM
     dbo.夹具项目视图  
    full OUTER JOIN  dbo.检具项目视图 on 夹具项目视图.夹具id=检具项目视图.检具id full OUTER JOIN  dbo.模具项目视图 on 夹具项目视图.夹具id=模具项目视图.模具id
      

  13.   

    楼主是不是要isnull(字段,你要设成的字) 如
    select isnull(夹具id,0) as 夹具id,isnull(夹具项目名称,'') as 夹具项目名称 ... from ..
      

  14.   

    isnull(字段,'')  如果字段为空或null  都会显示''
      

  15.   

    每个字段都ISNULL函数处理下
      

  16.   

    楼主是想要所有字段的所有行里只有NULL 的都显示''空字段符串吗
      

  17.   

    create table tb3(c2 int,v3 varchar(20))
    create table tb2(c2 int,v2 varchar(20))
    create table tb1(c1 int,v1 varchar(20))
    insert tb3 values
    (32,'de3')
    insert tb2 values
    (2,'32sd')
    insert tb2 values
    (432,'4323')
    insert tb1 values
    (21,'4323')
    insert tb1 values
    (2,'de3')
    ------以上創建表
    declare @a1 int,@a2 int,@a3 int,@maxv int 
    select @a1=COUNT(*) from tb1
    select @a2=COUNT(*) from tb2
    select @a3=COUNT(*) from tb3
    select @maxv=MAX(maxvalue) from (select @a1 'maxvalue' union select @a2 union select @a3) a
    -----以上求得最多的記錄是哪個表,再採取左連接
    -----當第一個表的記錄數為最多大。進行下以連接 。如果第二表記錄是最多了,剛你只需要換一下就OK 了。
    if @a1=@maxv
    begin 
    select * from 
    (
    select *,(select COUNT(*) from tb1 where c1<=t1.c1) 'lev1' from tb1 t1 
    ) a1
    left join 
    (
    select *,(select COUNT(*) from tb2 where c2<=t2.c2) 'lev2' from tb2 t2 
    ) a2 
    on a1.lev1=a2.lev2
    left join
    (
    select *,(select COUNT(*) from tb3 where c2<=t3.c2) 'lev3' from tb3 t3 
    ) a3
    on a1.lev1=a3.lev3
    end以下為結果,如果你需要將空值去掉。請用 isnull()函數。c1 v1 lev1 c2 v2 lev2 c2 v3 lev3
    13 H3 1 3 56 1 32 de3 1
    16 H7 2 42 r5 2 NULL NULL NULL
      

  18.   


    c1 v1 lev1 c2 v2 lev2 c2 v3 lev3
    13 H3 3 42 r5 3 NULL NULL NULL
    16 H7 4 432 4323 4 NULL NULL NULL
    21 4323 5 NULL NULL NULL NULL NULL NULL
    2 de3 2 3 56 2 32 de3 2
    2 de3 2 3 56 2 32 de3 2
    2 de3 2 3 56 2 32 de3 2
    2 de3 2 3 56 2 32 de3 2