日期:2014-05-16  浏览次数:20627 次

mysql的一些学习记录
ISNULL(expr)
如果exprNULLISNULL() 返回1 ,否则它返回0
mysql> select ISNULL(1+1);
        -> 0
mysql> select ISNULL(1/0);
        -> 1

注意,使用=NULL 的值比较总为假!

COALESCE(list)
回来list中第一个非NULL 的单元。
mysql> select COALESCE(NULL,1);
        -> 1
mysql> select COALESCE(NULL,NULL,NULL);
        -> NULL

INTERVAL(N,N1,N2,N3,...)
如果N < N1 ,返回0 ,如果N < N2 ,返回1 等等。所有的参数被当作整数。为了函数能正确地工作,它要求N1 <N2 <N3 < ... <Nn 。这是因为使用二进制搜索(很快)。
mysql> select INTERVAL(23, 1, 15, 17, 30, 44, 200);
        -> 3
mysql> select INTERVAL(10, 1, 10, 100, 1000);
        -> 2
mysql> select INTERVAL(22, 23, 30, 44, 200);