【问题标题】:How to get empty cells rows in mssql如何在mssql中获取空单元格行
【发布时间】:2015-01-20 11:59:58
【问题描述】:

我一直在尝试获取单元格为空的行,但我怎样才能获得一个空单元格 那里不是NULL,就像一个空字符串。

05J9LJ-E    E004030 BGH/F.TB
            E004032 000080.KS
002X87-E    E004033 018880.KS

所以第二行,第一列是 8 个空格,所以我怎样才能得到这些行

SELECT column_A,column_B,column_C FROM [dbo].[table] where column_A 为空

SELECT column_A,column_B,column_C FROM [dbo].[table] where column_A =''

当我将数据 放入记事本++中时

【问题讨论】:

  • 语法明显是SQL Server所以我去掉了mysql标签。

标签: sql sql-server


【解决方案1】:

您可以检查值中是否没有非空格字符:

SELECT column_A, column_B, column_C
FROM [dbo].[table] 
WHERE column_A is null OR
      column_A NOT LIKE '%[^ ]%'

这样做的好处是,如果需要,您可以包含除空格之外的其他字符。

【讨论】:

    【解决方案2】:

    您可以通过在两个条件之间使用OR 来检查它们是NULL 还是空格:

    WHERE column_A IS NULL
      OR  column_A = ''  -- includes multiple spaces
    

    【讨论】:

    • 我试过了,但它不起作用,可能是中间有一些额外的字符
    • LTRIM(RTRIM(column_A)) = '',这不是和column_A = ''一模一样吗?
    • @t-clausen.dk:你是对的 :) 编辑了我的答案以将其考虑在内。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    • 1970-01-01
    • 2020-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多