zoukankan      html  css  js  c++  java
  • mysql IF-IFNULL和IF-ISNULL同样逻辑的运行差别

    首先,目标记录是存在的

    SELECT * FROM d_device_user_bind dub WHERE dub.`uid`='222222222221'

    其次,

     SELECT dub.uid,dub.`device_id`,IF(IFNULL(dub.`device_id`,2)=2, 2, 1) isActivate FROM d_device_user_bind dub WHERE dub.del_flag=0 ORDER BY dub.`create_time` DESC LIMIT 8;

    换一个语句:  SELECT dub.uid,dub.`device_id`,IF(dub.`device_id` IS NULL OR dub.`device_id`='', 2, 1) isActivate FROM d_device_user_bind dub WHERE dub.del_flag=0 ORDER BY dub.`create_time` DESC LIMIT 8;

    再一个写法: SELECT dub.uid,dub.`device_id`,IF(ISNULL(dub.`device_id`), 2, 1) isActivate FROM d_device_user_bind dub WHERE dub.del_flag=0 ORDER BY dub.`create_time` DESC LIMIT 8;

    不知道为什么会这样,也许是mysql的一个bug吧。

  • 相关阅读:
    Emacs 使用YASnippet
    odbc备忘
    Emacs 矩形编辑
    ftp by libcurl
    emacsshell
    Emacs cnblogs 代码着色
    Emacs下的Man
    #include ""还是<>
    三种*
    应对Maze勒索攻击的最佳实践分享
  • 原文地址:https://www.cnblogs.com/xiaoyao-001/p/9407729.html
Copyright © 2011-2022 走看看