在这种情况下,ASCII()
函数的输出取决于以下条件:我们是将NULL作为字符串提供还是仅向其提供NULL。以下示例将展示差异-
mysql> SELECT ASCII(null); +-------------+ | ASCII(null) | +-------------+ | NULL | +-------------+ 1 row in set (0.00 sec) mysql> SELECT ASCII('null'); +---------------+ | ASCII('null') | +---------------+ | 110 | +---------------+ 1 row in set (0.00 sec) mysql> Select ASCII(NULL); +-------------+ | ASCII(NULL) | +-------------+ | NULL | +-------------+ 1 row in set (0.00 sec) mysql> Select ASCII('NULL'); +---------------+ | ASCII('NULL') | +---------------+ | 78 | +---------------+ 1 row in set (0.00 sec)
从上面的结果集中可以看到,当我们提供NULL或null作为字符串时,ASCII()
函数将返回第一个字符的数字代码,即在'NULL'的情况下返回N的数字代码,在返回'n'的情况下返回n的数字代码。 'null',否则当我们仅提供NULL时,它将返回NULL作为输出。