【问题标题】:Is there any difference b/w IS NULL in MySQL and MS SQLMySQL 和 MS SQL 中的黑白 IS NULL 有什么区别吗
【发布时间】:2013-08-21 07:15:17
【问题描述】:

MySQL 和 MS SQL 中的 b/w IS NULL 函数有什么区别。

(@VendorID IS NULL OR @VendorID = Contract.VendorID) 这是 MS SQL 语句。如果我想在 MySql 中这样做,是否需要更改语法。还有一件事是什么是 IF Null?

【问题讨论】:

标签: mysql sql sql-server


【解决方案1】:

您可以在MySQL 中使用IS NULL

IFNULL 是一个函数,如果字段为NULL,它将返回另一个值。这是 SQL Server 等效于 ISNULL

例如:

 IFNULL(VendorId, 0)

如果 VendorId 为空,则返回 0

您也可以使用COALESCE,它将返回第一个非NULL 值:

SELECT COALESCE(Field1, Field2, Field3)
FROM YourTable

【讨论】:

  • 或许值得一提的是COALESCE(VendorId, 0)是ANSI标准?
  • @Sam - 添加了一个 COALESCE 示例。
【解决方案2】:

完全没有区别,这在mysql查询窗口中也可以正常工作。

【讨论】:

    【解决方案3】:

    Is NULL 是 ANSI 标准,在任何地方的行为都应该相同。

    【讨论】:

      猜你喜欢
      • 2011-04-16
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-29
      相关资源
      最近更新 更多