65.9K
CodeProject 正在变化。 阅读更多。
Home

NULL 值可能很危险

starIconstarIconemptyStarIconemptyStarIconemptyStarIcon

2.00/5 (1投票)

2013 年 10 月 11 日

CPOL
viewsIcon

5358

NULL 值可能会产生奇怪的结果,有时很难诊断根本原因。因此,为了避免这类问题,你需要记住一些事项。

NULL 值可能会产生奇怪的结果,有时很难诊断根本原因。因此,为了避免这类问题,你需要记住一些事项,然后再编写查询。

有几种方法可以解决这个问题,在这里我只讨论 3 种解决方案。

  1. 通过 ISNULL 函数处理,尤其是在进行一些计算时。
    示例: ISNULL(columnName,0)
  2. 当进行左连接或复杂语句时,使用 Case 语句
    示例: SELECT CASE WHEN Tbl1.Column1=’Value1’ AND Tbl2.Column2=’Value1’ THEN ‘True’ ELSE ‘False’ END as ColumnA
  3. 另一种方法是通过 COALESCE 函数处理,如果参数为 NULL,此函数将返回 NULL。
    示例: SELECT * FROM Table WHERE Column1= COALESCE(@Column1,Column1) AND Column2=@Column2
    在上面的示例中,Column1 是可选的。
    注意: 切勿在执行任何操作语句(如 UPDATE、DELETE 等)时使用此方法,最好在 SELECT 语句中使用。
© . All rights reserved.